Blocs de thème

Un bloc de thème est un bloc dans l'éditeur qui n'est disponible que quand un thème spécifique est actif. Les thèmes en contribuent pour des primitives de mise en page qui correspondent à leur style

Un bloc de thème est un bloc dans l'éditeur qui n'est disponible que quand un thème spécifique est actif. Les thèmes en contribuent pour des primitives de mise en page qui correspondent à leur style visuel — hero façon magazine, grille de services pour sites corporate, etc.

Les blocs de thème complètent les blocs de cœur (toujours disponibles indépendamment du thème) et les blocs d'embed (fournis par le must-use flexweg-embeds).

Quand vous les voyez

L'inserter / de l'éditeur groupe les blocs par catégorie. Quand le thème actif enregistre des blocs, ils apparaissent dans leur propre groupe en bas de la liste, namespacé avec l'id du thème :

/                                       ← inserter ouvre
  Texte        ▶
  Média        ▶
  Mise en page ▶
  Embed        ▶
  Magazine     ▶  ← groupe spécifique au thème (quand magazine est actif)
    magazine/hero-split
    magazine/most-read
    magazine/promo-card

Si vous changez de thème, le groupe change. Le thème default ne contribue pas de blocs de thème ; magazine et corporate en contribuent plusieurs chacun.

Blocs du thème magazine

3 blocs :

  • magazine/hero-split — hero éditorial double colonne avec image, titre principal, kicker
  • magazine/most-read — widget « les plus lus » avec liste paginée
  • magazine/promo-card — encart promo personnalisable

Blocs du thème corporate

10 blocs :

  • corporate/hero-overlay — hero avec image de fond, titre, deux CTAs
  • corporate/hero-split — hero deux colonnes (texte + visuel)
  • corporate/services-grid — grille 3 colonnes de cartes services
  • corporate/cta-banner — bannière d'appel à l'action centrée
  • corporate/testimonials — slider de témoignages
  • corporate/trust-bar — barre de logos « ils nous font confiance »
  • corporate/stats-grid — grille 4 cellules de chiffres clés
  • corporate/feature-stack — empilement de features avec icônes
  • corporate/contact-info — bloc d'infos contact (adresse, téléphone, email)
  • corporate/contact-form — formulaire de contact (Formspree-compatible ou mailto fallback)

Blocs du thème marketplace-core

Le thème marketplace-core (utilisé sur cms.flexweg.com) contribue 9 blocs orientés marketplace + landing :

  • marketplace-core/header-buttons — boutons Télécharger + Demo + prix
  • marketplace-core/gallery — galerie d'images
  • marketplace-core/specs — table de spécifications
  • marketplace-core/features — bento de fonctionnalités clés
  • marketplace-core/landing-hero — hero de landing
  • marketplace-core/feature-grid — grille 3 colonnes de cartes
  • marketplace-core/feature-row — rangée texte + image
  • marketplace-core/stats-bar — barre 4 cellules de chiffres
  • marketplace-core/cta-banner — bannière CTA

Comment ça marche techniquement

Chaque bloc émet dans le markdown un marqueur :

HTML
<div data-cms-block="<namespace>/<id>" data-attrs="<base64-json>"></div>

L'éditeur affiche un aperçu en édition. À la publication, le thème accroche le hook post.html.body et remplace chaque marqueur par le HTML rendu (via renderXxx(attrs) en TypeScript exécuté côté navigateur).

Donc le markdown est portable entre thèmes (le marqueur subsiste), mais le rendu n'est correct qu'avec le bon thème actif. Si vous basculez de magazine à default, les marqueurs magazine/... restent dans le markdown mais ne sont plus rendus — le HTML public les rend en <div> vides.

C'est intentionnel : le contenu (markdown) est portable, l'apparence (rendu blocs) est dépendante du thème. Pour migrer le contenu vers un autre thème, vous devez retoucher les blocs spécifiques.