Content Widgets

Des widgets d'article sous forme de blocs de contenu : avis, accordéons, onglets, étapes, encadrés produit, intégrations, code, cartes, citations, sommaire et derniers articles.

Extension

Content Widgets

Des widgets d'article sous forme de blocs de contenu : avis, accordéons, onglets, étapes, encadrés produit, intégrations, code, cartes, citations, sommaire et derniers articles.

  • Catégorie: widgets
  • Statut: Disponible
  • Version: 1.0.4
  • Prix: Inconnu
  • Source: Registre officiel de plugins
  • Installation: Plugin isolé du registre
  • Vérifié: 2026-10-21

Description

Content Widgets

Démo en ligne : emdashhq.com/blog/widget-gallery — les dix-neuf widgets affichés dans un seul article.

Un ensemble de widgets d’article pour les sites EmDash : encadrés d’information, accordéons, onglets, listes de contrôle, boutons, intégrations YouTube et iframe, encadrés produit/avis, citations mises en exergue, tableaux de faits, sommaire automatique, navigation de série et liste dynamique des « derniers articles ».

Chaque widget est un type de bloc d’un champ blocks, de sorte que les rédacteurs peuvent les déposer dans n’importe quel champ à base de blocs — contenu de page, corps d’article de blog, pages d’atterrissage — partout où votre schéma les autorise.

Ce qui est inclus

Dix-neuf types de blocs, tous préfixés par widget_ : Prose, Notice, Accordion, Tabs, Checklist, Steps, Button, YouTube, Embed, Image, Code, Product box, Link cards, Pull quote, Facts table, Table of contents, Series nav, Latest posts et Divider.

Comment ça fonctionne

Les plugins en bac à sable ne peuvent pas fournir de composants de rendu Astro ; les widgets sont donc distribués sous forme de JSON de types de blocs + composants Astro prêts à l’emploi dans le dossier site/ du paquet. Vous les copiez une seule fois dans votre site ; le plugin fournit le comportement d’exécution partagé (mode confidentialité de YouTube, ligne de mention d’affiliation, requête des articles) via deux routes publiques que les composants appellent dans le même processus — sans aller-retour HTTP.

Le plugin ajoute aussi une page d’administration Widget catalog qui documente les champs de chaque bloc, et une page Setup guide avec les étapes d’installation exactes et l’état des paramètres.

Installation

Installation

1. Installer le plugin

Installez @bitdoze.com/emdashhq-widgets depuis le registre de plugins EmDash, ou liez-le comme dépendance de fichier et déclarez-le sous sandboxed: dans astro.config.mjs :

import widgetsPlugin from "emdashhq-widgets";

emdash();

Le plugin demande content:read et schema:read — approuvez-les pour que le widget Latest posts et la route posts fonctionnent. Les widgets statiques s’affichent sans elles.

2. Ajouter les types de blocs à votre schéma

Copiez site/block-types/*.json dans le tableau blockTypes de votre fichier seed (ou faites un POST du contenu de chaque fichier vers /_emdash/api/schema/block-types sur un site en ligne), puis listez les types dans les allowedTypes des champs blocks qui doivent les accepter — par exemple pages.content ou posts.body.

3. Déclarer les moteurs de rendu

Copiez site/components/*.astro, site/components/config.ts, site/components/icons.ts, site/widget-components.ts et site/WidgetBlocks.astro dans votre projet, puis affichez soit WidgetBlocks pour un champ réservé aux widgets :

soit étalez widgetComponents dans votre table existante :

const blockComponents = defineBlockComponents();

4. Configurer

Les paramètres se trouvent sous Plugins → Content Widgets → Settings :

  • Privacy-enhanced YouTube embeds — sert les lecteurs depuis youtube-nocookie.com (activé par défaut).
  • Affiliate disclosure — ligne en petits caractères dans les widgets Product box ; vide, elle est masquée.
  • Posts collection — collection par défaut pour le widget Latest posts et la route posts.

FAQ

FAQ

Pourquoi dois-je copier des fichiers au lieu que le plugin le fasse ? Les plugins en bac à sable s’exécutent dans un environnement isolé et ne peuvent pas déclarer de composants de rendu Astro. Le dossier site/ fournit les mêmes JSON de types de blocs et composants que ceux utilisés par l’auteur du plugin ; l’installation est donc une copie unique dans votre dépôt — après quoi les widgets se comportent comme vos propres types de blocs.

Les widgets fonctionnent-ils sans le plugin installé ? Les statiques, oui — Prose, Notice, Accordion, Tabs, Checklist, Button, Embed, Quote, Facts, TOC et Series n’ont besoin que des types de blocs et des composants. YouTube, Product box et Latest posts lisent les paramètres ou les routes du plugin ; sans le plugin, ils reviennent aux valeurs par défaut (sans cookie activé, sans mention, liste vide).

Le widget YouTube dépose-t-il des cookies ? Aucun lecteur ne se charge tant que le visiteur n’a pas cliqué sur la vignette. Avec le paramètre de confidentialité par défaut, le lecteur provient alors de youtube-nocookie.com, qui ne dépose aucun cookie de suivi, même à ce moment-là.

Comment Latest posts construit-il sa liste ? Le composant appelle la route publique posts du plugin dans le même processus (sans requête HTTP). La route liste les entrées publiées, des plus récentes aux plus anciennes, depuis la collection configurée, et résout l’URL publique de chaque entrée à partir du urlPattern de sa collection.

Puis-je modifier le style des widgets ? Oui — chaque composant utilise des classes wgt-* et lit vos jetons de conception (--color-brand, --color-surface, …) avec des valeurs de repli neutres. Remplacez les classes ou les jetons pour les accorder à votre thème.

Les widgets fonctionnent-ils aussi dans les pages ordinaires ? Oui. Ajoutez les types widget_* aux allowedTypes de n’importe quel champ blocks — pages, articles ou autre.

Journal des modifications

Journal des modifications

1.0.4

  • Onglets sans JavaScript : les libellés se dégradent en ancres de page et chaque panneau reste visible. Avec JS, ils évoluent en véritables onglets avec les touches fléchées, Début/Fin et tabindex itinérant.
  • Documentation : le lien de la démo de la galerie comporte des paramètres UTM.

1.0.3

  • Product box : correction de la mise en page sans image qui comprimait le contenu dans une colonne étroite ; la colonne média ne s’affiche plus que lorsqu’une image est définie
  • Nouveau style de Product box : ligne de mention en police à chasse fixe, pastille de prix, marques coche/croix sur les avantages et inconvénients, bouton assorti aux boutons du site
  • Le jeu d’icônes du site gagne une icône x pour la colonne des inconvénients

1.0.2

  • Documentation : la description renvoie vers l’article de démo de la galerie de widgets en ligne

1.0.1

  • Ressources de la fiche du registre : icône du plugin, bannière et captures d’écran
  • Corrections de documentation : liste des 19 blocs dans la description et le journal des modifications

1.0.0

  • Version initiale : 19 types de blocs widget_* (prose, notice, accordion, tabs, checklist, steps, button, YouTube, embed, image, code, product, link cards, quote, facts, table of contents, series nav, latest posts, divider)
  • JSON de types de blocs et composants Astro autonomes sous site/
  • Route publique config pour les paramètres partagés (mode confidentialité de YouTube, mention d’affiliation, collection d’articles)
  • Route publique posts listant les entrées publiées les plus récentes avec leurs URL résolues
  • Pages d’administration Block Kit : catalogue des widgets et guide de configuration