Contexte REST (view, edit, embed)

Définition : Le contexte REST WordPress précise la représentation demandée d’une ressource, notamment view, edit ou embed. Il influence les champs disponibles et fonctionne en complément des contrôles d’autorisation.

Comprendre et utiliser

À quoi sert cette notion ?

Il permet d’éviter d’envoyer systématiquement les données réservées à l’édition à un lecteur qui consulte seulement une publication publique.

Fonctionnement technique

Les schémas peuvent associer des champs à un ou plusieurs contextes. edit peut exposer des propriétés nécessitant une authentification adaptée ; embed privilégie une représentation réduite.

Dans quel contexte l’utiliser ?

Un éditeur WordPress authentifié doit récupérer des données utiles à l’édition, tandis qu’un affichage public lit la représentation view.

Étude de cas : application professionnelle

Dans WordPress, la représentation d’un article utilisée pour son édition diffère de celle destinée à un lecteur public. Le contexte view ne fournit pas nécessairement les mêmes champs que edit ; embed sert une représentation réduite dans certains cas. Tester ces variations avec un article de brouillon et un article publié. Lorsque la requête edit échoue pour un visiteur anonyme, ne pas la réparer en désactivant les permissions : ce refus exprime le contrat de sécurité. Définir les champs exposés à chaque public lors de la conception de l’API.

Exemple technique commenté

Les lignes ci-dessus sont des exemples de requêtes HTTP, non des commandes prêtes à coller dans un article. Pour les essayer, utiliser un client HTTP et un site de test. Toute opération d'écriture nécessite un compte autorisé, une authentification appropriée et une sauvegarde du jeu de données concerné.

GET /wp-json/wp/v2/posts/42?context=view
GET /wp-json/wp/v2/posts/42?context=edit

Décryptage du code et résultat attendu

Les deux URL ciblent la même publication, mais le contexte demandé change la représentation. Le second appel peut être refusé sans permissions suffisantes.

Exercice guidé pour vérifier la notion

Comparer les champs retournés pour view et edit avec un compte de test doté des droits nécessaires, puis sans connexion.

Précautions et limites

Ne pas confondre changement de contexte et élévation de privilèges. Une application non autorisée ne devient pas éditrice en ajoutant context=edit.

À ne pas confondre

Le contexte sélectionne la visibilité des champs ; _fields ne fait que sélectionner un sous-ensemble des champs disponibles.

Diagnostic avancé

Si un champ apparaît seulement pour l’éditeur, vérifier sa déclaration de schéma et les capacités contrôlées côté serveur.

Choix d’architecture et déploiement

Définir la représentation publique minimale, documenter les champs d’édition et éviter d’exposer les données internes dans les contextes non authentifiés.

Références officielles WordPress

Bouton retour en haut de la page