Sources d’attributs de bloc
Définition : Une source d’attribut détermine comment WordPress retrouve la valeur d’un bloc depuis son contenu enregistré. Elle peut lire du HTML, du texte ou un attribut d’élément selon un sélecteur.
Comprendre et utiliser
À quoi cela sert ?
Cette configuration évite de stocker certaines valeurs en double. Elle permet par exemple de considérer le texte d’un titre comme la source même de l’attribut éditable.
Comment cela fonctionne ?
Les champs source et selector indiquent où extraire les données du HTML sauvegardé. Une absence de source conduit généralement à la sérialisation dans le commentaire de délimitation.
Dans quel contexte l’utiliser ?
Utile pour les blocs statiques dans lesquels le HTML constitue la représentation persistante du contenu, notamment lorsque RichText édite un élément bien déterminé.
Cas concret : ATOOLPHA
Une carte ATOOLPHA possède une balise h3 dont le contenu doit être retrouvé directement au rechargement de l’éditeur.
Exemple de code commenté
Extrait documentaire : le contexte WordPress du plugin/éditeur et les dépendances décrites sont nécessaires ; ne pas coller dans le contenu d’une page.
{"attributes":{"heading":{"type":"string","source":"html","selector":"h3"}}}
Décryptage de l’exemple
L’extracteur cherchera la première balise h3 correspondante dans le HTML du bloc. Pour éviter les incohérences, la sortie save doit générer cette même structure et le même format.
Résultat attendu
Après sauvegarde puis réouverture, la valeur heading est reconstruite à partir du titre HTML sérialisé si la structure correspond.
Atelier pratique de vérification
Sauvegarder un bloc dont l’attribut vient du contenu d’une balise h3. Examiner le HTML produit, rouvrir le contenu puis modifier provisoirement selector vers h2. Comparer la valeur extraite, restaurer le sélecteur d’origine et documenter une stratégie compatible pour les anciennes fiches.
Précautions et limites
Changer la structure de h3 à h2 sans stratégie de migration peut vider l’attribut ou déclencher une invalidation. Tester les anciens articles avant toute mise en production.
Contrôle avant intégration dans un plugin
Tester les sélecteurs sur un article enregistré avec une ancienne structure HTML et avec un contenu vide. Une évolution de balise nécessite une stratégie de transition documentée et des fixtures représentatives.
À ne pas confondre
Une source d’attribut relit le contenu sauvegardé ; une Block Binding relie certains attributs à une source de données dynamique externe au HTML sérialisé.
Diagnostic et dépannage avancés
Si l’attribut devient vide, inspecter la sortie HTML et comparer précisément selector, source et la balise produite par save.
Notions associées
- Attributs de bloc
- Bloc statique
- Validation des blocs
