add_meta_box()
Définition : add_meta_box() enregistre une boîte personnalisée sur un écran d’administration WordPress. La fonction définit notamment son identifiant, son titre, son callback de rendu et les types de contenus concernés.
Terminologie
Terme officiel : add_meta_box()
Autres appellations : Ajouter une metabox
À quoi cela sert
Elle permet d’installer une interface de saisie ou d’information au bon endroit dans la page d’édition, sans modifier le formulaire principal fourni par WordPress.
Comment cela fonctionne
La fonction associe un callback PHP à un emplacement de l’écran. WordPress se charge de faire appel à ce callback lorsque l’interface est rendue. Les données du formulaire ne sont pas automatiquement persistées.
Dans quel contexte l’utiliser
Employer add_meta_box() depuis le hook add_meta_boxes pour une extension de l’éditeur ou un écran prenant en charge les meta boxes.
Exemple concret
Une extension affiche le niveau de classification d’un article, à titre informatif, dans un encadré latéral.
Exemple de code commenté
Extrait pédagogique PHP pour extension WordPress : adapter au contexte et tester sur un environnement de développement avant tout usage.
<?php
add_action( 'add_meta_boxes', function () {
add_meta_box(
'atoolpha_etat', 'État documentaire',
function ( $post ) {
echo '<p>Document n° ' . esc_html( (string) $post->ID ) . '</p>';
},
'post', 'side', 'default'
);
} );
Explication pas à pas de l’exemple
1. Enregistrement lors de add_meta_boxes. 2. L’identifiant évite de mélanger cette boîte avec les autres. 3. Le callback reçoit le WP_Post courant. 4. Le numéro est échappé avant affichage.
Résultat attendu
L’auteur voit un panneau « État documentaire » dans l’écran d’édition d’un article ; cet exemple ne modifie aucune donnée.
Mise en pratique guidée
Déclarer une boîte de démonstration sur les articles, puis naviguer entre l’écran de modification d’un article et celui d’une page. Vérifier le titre, la position et la présence du panneau seulement là où le type post est indiqué. Désactiver ensuite le code dans le projet de test pour vérifier que l’interface redevient native.
Précautions et limites
Assurer l’unicité des identifiants. Prévoir les comportements de l’éditeur de blocs et ne pas confondre ajout d’interface et validation des données enregistrées.
À ne pas confondre
add_meta_box() déclare un panneau ; update_post_meta() écrit des données persistantes ; register_post_meta() déclare un champ et ses règles.
Termes associés
- Meta Box
- add_meta_boxes
- update_post_meta()
