Aller au contenu principal

Introduction

Créez des blocs de contenu réutilisables qui peuvent être utilisés sur plusieurs pages.

🎯 Que fait ce module ?

Le module Blocks vous permet d'utiliser des composants de contenu réutilisables (blocs) qui contiennent des ensembles d'attributs et peuvent être utilisés sur plusieurs pages - comme des en-têtes, des pieds de page, des bannières, des témoignages ou tout contenu répétitif.

Pensez-y comme à des briques LEGO pour votre site web - vous créez un bloc une fois, et le réutilisez partout où vous en avez besoin. Modifiez le bloc une fois, et il se met à jour automatiquement partout.

📖 Explication Simple

Imaginez que vous construisez un site web avec :

  • 🔝 En-tête - logo, menu de navigation (identique sur chaque page)
  • 🔽 Pied de page - informations de contact, liens sociaux (identiques sur chaque page)
  • 📢 Bannière Promo - offre spéciale (apparaît sur plusieurs pages)
  • Témoignages - avis clients (réutilisés à différents endroits)
  • 📞 Formulaire de Contact - apparaît sur plusieurs pages

Au lieu de copier ce contenu sur chaque page :

  • ✅ Créez une fois en tant que Bloc
  • ✅ Insérez le bloc où vous en avez besoin
  • ✅ Mettez à jour à un seul endroit → les changements se répercutent automatiquement partout
  • ✅ Gardez votre contenu DRY (Don't Repeat Yourself)

Exemple concret :

Sans Blocks (copier-coller) :

  • Mettre à jour le pied de page → Éditer 50 pages manuellement ❌
  • Ajouter un lien social → Mettre à jour partout ❌
  • Contenu incohérent sur les pages ❌

Avec Blocks (réutilisables) :

  • Mettre à jour le bloc de pied de page → Changements sur les 50 pages instantanément ✅
  • Ajouter un lien social → Mettre à jour une fois ✅
  • Toujours cohérent ✅

✨ Concepts Clés

Qu'est-ce qu'un Bloc ?

Un bloc est un composant de contenu réutilisable contenant :

  • Contenu - Texte, images, liens, toutes données
  • Attributs - Champs personnalisés que vous définissez
  • Marqueur - Identifiant unique pour le référencer
  • Statut - Actif, brouillon, archivé

Bloc vs Page

FonctionnalitéPageBloc
ButContenu de page completComposant réutilisable
URLA sa propre URL (/about)Pas d'URL (intégré)
UtilisationConsulté directementInséré dans les pages
ExemplePage À ProposPied de page, En-tête

Principale différence : Les pages sont des destinations, les blocs sont des éléments de construction.

Types de Blocs Courants

Blocs typiques que vous pourriez créer :

Type de BlocContenu ExempleOù Utilisé
En-têteLogo, menu de navigation, rechercheChaque page
Pied de pageContact, liens, copyrightChaque page
Bannière HeroGrande image + bouton CTAPage d'accueil, pages de destination
TémoignagesAvis clientsPlusieurs pages
Formulaire de ContactFormulaire d'emailPage de contact, modales
Bannière PromoAlerte d'offre spécialePages sélectionnées
Liens SociauxIcônes Facebook, TwitterPied de page, barre latérale
Inscription à la NewsletterBoîte d'abonnement par emailPied de page, blog

Réutilisabilité des Blocs

Les blocs peuvent être :

  • ✅ Utilisés sur plusieurs pages
  • ✅ Mis à jour une fois, reflétés partout
  • ✅ Localisés (contenu différent par langue)

📋 Ce que Vous Devez Savoir

Identification des Blocs

Trois façons d'identifier les blocs :

MéthodeQuand l'utiliserExemple
Lister TousTableau de bord admin, sélecteur de blocsgetBlocks()
Par MarqueurRéférence dans le code (meilleure pratique)footer, header, promo_banner
Rechercher des blocsRéférences internessearchBlock('foo')

Meilleure pratique : Utilisez toujours des marqueurs dans votre code (ils ne changent jamais).

Structure du Bloc

Chaque bloc a ces champs clés :

{
id: 3, // ID unique
localizeInfos: { // données localisées du bloc
title: 'Block', // titre localisé du bloc
},
version: 0, // version du bloc
position: 1, // position du bloc dans le tableau de blocs
identifier: 'block', // identifiant du bloc
type: 'common_block', // type de bloc
templateIdentifier: null, // identifiant de modèle
isVisible: true, // visibilité
attributeValues: {}, // attributs du bloc
}

Attributs Personnalisés

Les blocs utilisent AttributesSets pour les champs personnalisés :

Exemples :

  • Bloc de pied de page : texte de copyright, liens sociaux, informations de contact
  • Bannière Hero : titre, sous-titre, bouton CTA, image de fond
  • Témoignage : nom de l'auteur, photo, citation, évaluation
  • Formulaire de contact : configuration des champs, texte du bouton de soumission

En savoir plus : Voir Module AttributesSets


📊 Tableau de Référence Rapide - Méthodes Courantes

MéthodeCe qu'elle faitQuand l'utiliser
getBlocks()Obtenir tous les blocs (paginé, filtré)Lister tous les blocs disponibles
getBlockByMarker()Obtenir un bloc par marqueurRécupérer un bloc spécifique dans le code
searchBlock()Rechercher des blocsRécupérer des blocs

❓ Questions Fréquemment Posées (FAQ)

Quelle est la différence entre les Blocs et les Pages ?

  • Pages - Pages complètes autonomes avec des URL (par exemple, /about)
  • Blocs - Composants réutilisables insérés dans des pages (par exemple, pied de page)

Pensez-y comme :

  • Page = Document complet
  • Bloc = Paragraphe que vous réutilisez dans plusieurs documents

Comment mettre à jour le contenu d'un bloc ?

Mettez-le à jour dans le panneau d'administration OneEntry :

  1. Allez dans la section Blocs
  2. Trouvez votre bloc (par exemple, "Pied de page")
  3. Éditez les attributs
  4. Enregistrez

Toutes les pages utilisant ce bloc se mettent à jour automatiquement !


Dois-je créer de nombreux petits blocs ou quelques grands blocs ?

De nombreux petits blocs est préférable :

✅ Bon (petits, ciblés) :

- header_logo
- header_navigation
- footer_copyright
- footer_social_links

❌ À éviter (trop grand) :

- entire_page_layout (contient tout)

Pourquoi ? Les petits blocs sont plus faciles à réutiliser et à maintenir.


Puis-je utiliser le même bloc plusieurs fois sur une page ?

Oui ! Récupérez une fois, affichez plusieurs fois.


Comment puis-je afficher/masquer des blocs de manière conditionnelle ?

Vérifiez statusId et isVisible


Puis-je créer des blocs dynamiquement via l'API ?

Le SDK est en lecture seule. Pour créer des blocs, utilisez le panneau d'administration OneEntry.


Comment gérer les blocs manquants de manière élégante ?

Utilisez toujours try/catch


💡 Notes Importantes

Meilleures Pratiques pour les Marqueurs de Blocs

✅ Bons noms de marqueurs :

  • Descriptifs : global_footer, homepage_hero
  • Utilisez des underscores : contact_form
  • Minuscules : promo_banner
  • Indiquez la portée : global_header vs blog_header

❌ Mauvais noms de marqueurs :

  • Généraux : block1, content
  • Espaces : my block
  • Cas mixte : MyBlock, ProMoBanner

Mise en Cache des Blocs

Les blocs changent rarement → mettez-les en cache !

🎓 Meilleures Pratiques

  • Créez des blocs petits et ciblés (responsabilité unique)
  • Utilisez des marqueurs descriptifs (footer, pas block1)
  • Mettez en cache les blocs pour réduire les appels API
  • Gérez les blocs manquants de manière élégante (try/catch)
  • Documentez l'utilisation de chaque bloc
  • Gardez la structure des blocs cohérente
  • Testez les modifications des blocs avant publication
  • Utilisez statusId pour prévisualiser les changements

Plus d'informations sur l'interface utilisateur du module https://doc.oneentry.cloud/docs/blocks/introduction

Définition du module Blocks


const { Blocks } = defineOneEntry(
"your-project-url", {
"token": "your-app-token"
}
);


🔗 Documentation Connexe