show_in_rest
Définition : show_in_rest est un paramètre WordPress utilisé notamment lors de la déclaration de métadonnées. Il indique si une valeur peut être représentée ou manipulée par l’API REST selon son schéma.
Terminologie
Terme officiel : show_in_rest
Autres appellations : Exposition REST des métadonnées
À quoi cela sert
Il permet aux fonctionnalités comme l’éditeur de blocs ou des applications autorisées d’accéder aux champs personnalisés par les points d’accès WordPress, lorsque leur configuration l’autorise.
Comment cela fonctionne
Dans les arguments de register_post_meta(), true active une exposition basée sur le type et le schéma enregistrés. Les requêtes REST restent soumises à leurs règles de visibilité et d’autorisation ; l’enregistrement seul ne remplace pas leur contrôle.
Dans quel contexte l’utiliser
À prévoir pour un champ devant être éditable dans Gutenberg ou accessible à un client externe, après évaluation de sa confidentialité.
Exemple concret
Un champ « Niveau de difficulté » doit être lisible par un outil de présentation des fiches techniques.
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( 'init', function () {
register_post_meta( 'post', 'atoolpha_niveau', array(
'single' => true,
'type' => 'string',
'show_in_rest' => array(
'schema' => array( 'type' => 'string' ),
),
'sanitize_callback' => 'sanitize_text_field',
) );
} );
Explication pas à pas de l’exemple
1. Le champ est déclaré comme chaîne unique. 2. show_in_rest fournit un schéma. 3. WordPress peut ensuite inclure la valeur dans les contextes REST permis. 4. La sauvegarde demeure soumise aux permissions.
Résultat attendu
Le champ est représentable par l’API REST des publications selon les conditions du point d’accès et du contexte de consultation.
Mise en pratique guidée
Dans un site de développement, déclarer un champ de contenu public non sensible avec show_in_rest. Interroger l’endpoint REST du post en contexte adapté, puis vérifier les différences entre lecture anonyme, lecture authentifiée et tentative d’écriture. Pour un type personnalisé, contrôler aussi la prise en charge de custom-fields et les permissions de l’endpoint.
Précautions et limites
Ne jamais exposer de secrets avec show_in_rest. Pour un type de contenu personnalisé, activer également le support custom-fields si nécessaire et vérifier les règles de capacité.
À ne pas confondre
Une propriété exposée en REST n’est pas automatiquement accessible anonymement en écriture ni forcément affichée dans un champ visuel.
Termes associés
- register_post_meta()
- REST API
- current_user_can()
