vendredi 25 septembre 2026

À propos

Contact

Lexique · Éditeur de blocs

block.json

En anglais : « block.json »

Le fichier block.json centralise, au format JSON, toutes les métadonnées d'un bloc : son nom, ses attributs, sa catégorie, ses styles et ses scripts, lus à la fois par PHP et par JavaScript.

Avant l’introduction de ce fichier, déclarer un bloc demandait de dupliquer les mêmes informations à deux endroits : une fois côté PHP pour l’enregistrement serveur, une fois côté JavaScript pour l’éditeur, avec le risque que les deux versions divergent. block.json règle ce problème en devenant la source unique de vérité : un seul fichier, lu aussi bien par register_block_type() en PHP que par les outils de compilation JavaScript, décrit tout ce qui définit le bloc.

Fonctionnement dans WordPress

Ce fichier déclare notamment name (au format espace-de-nom/nom-du-bloc), attributes, supports (les fonctionnalités activées comme les couleurs ou l’alignement), category, ainsi que les points d’entrée de scripts et styles (editorScript, style, viewScript, ou leur équivalent moderne en modules). Depuis WordPress 5.8, l’appel register_block_type( __DIR__ ) côté PHP suffit à lire automatiquement ce fichier, sans avoir à recopier ses informations dans un tableau PHP séparé.

Exemple

{
  "apiVersion": 3,
  "name": "mon-plugin/encart",
  "title": "Encart",
  "category": "widgets",
  "attributes": { "texte": { "type": "string" } },
  "editorScript": "file:./index.js"
}

Bon à savoir

  • La propriété apiVersion détermine certains comportements du bloc dans l’éditeur (comme la gestion des styles imbriqués) ; la valeur 3 est la référence actuelle pour les nouveaux blocs.
  • Un outil comme @wordpress/scripts peut générer et compléter ce fichier automatiquement à partir d’un modèle de départ créé avec @wordpress/create-block.
  • Un bloc du répertoire officiel des extensions doit obligatoirement fournir un block.json valide pour être correctement indexé et affiché dans la bibliothèque de blocs.