REST API — Exposer des Champs Personnalisés aux Applications Headless | Field Forge - Champs personnalisés, conçus pour la vitesse
Télécharger Se connecter

REST API — Exposer des Champs Personnalisés aux Applications Headless

Deux façons d’accéder aux champs personnalisés

1. En ligne sur les points de terminaison REST principaux

Lorsque Field Forge est actif, chaque réponse wp/v2/posts, wp/v2/pages, et wp/v2/{custom_post_type} inclut une propriété fieldforge contenant les valeurs des champs personnalisés :

“`json GET /wp-json/wp/v2/posts/123

{ “id”: 123, “title”: { “rendered”: “À Propos de Nous” }, “content”: { “rendered”: “…” }, “fieldforge”: { “hero_title”: “Bienvenue sur Notre Site”, “hero_subtitle”: “Construire de meilleures expériences WordPress”, “hero_image”: { “id”: 456, “url”: “https://example.com/hero.jpg”, “alt”: “Image héroïque”, “sizes”: { “thumbnail”: “https://…”, “medium”: “https://…”, “large”: “https://…” } }, “team_members”: [ { “name”: “Alice Johnson”, “photo”: { “id”: 234, “url”: “…”, “alt”: “Alice” }, “bio”: “Alice est…” }, { “name”: “Bob Smith”, “photo”: { “id”: 235, “url”: “…”, “alt”: “Bob” }, “bio”: “Bob est…” } ] } } “`

C’est ainsi que la plupart des sites WordPress headless consomment des champs personnalisés — récupérer un article, obtenir des champs personnalisés dans la même réponse, aucune demande supplémentaire nécessaire.

2. Points de terminaison dédiés de Field Forge

Pour des cas d’utilisation avancés, Field Forge expose sa propre API REST sous /wp-json/fieldforge/v1/.


Référence des points de terminaison

Groupes de champs

GET /wp-json/fieldforge/v1/field-groups GET /wp-json/fieldforge/v1/field-groups/{id} POST /wp-json/fieldforge/v1/field-groups PUT /wp-json/fieldforge/v1/field-groups/{id} DELETE /wp-json/fieldforge/v1/field-groups/{id}

Lister, lire, créer, mettre à jour et supprimer des groupes de champs. Cas d’utilisation : panneaux d’administration headless, configuration programmatique de groupes de champs, déploiement de schémas CI/CD.

Valeurs des champs

GET /wp-json/fieldforge/v1/fields/{post_id} PUT /wp-json/fieldforge/v1/fields/{post_id}

Obtenez toutes les valeurs des champs pour un article spécifique, ou mettez-les à jour. La réponse GET correspond au format renvoyé dans la propriété fieldforge de l’API REST principale.

Exemple : “ GET /wp-json/fieldforge/v1/fields/123

json { "post_id": 123, "field_group": "hero-section", "values": { "hero_title": "Bienvenue", "hero_image": { "id": 456, "url": "..." } } }

Pages d’options

GET /wp-json/fieldforge/v1/options/{page_slug} PUT /wp-json/fieldforge/v1/options/{page_slug}

Lire et mettre à jour les valeurs des pages d’options. Parfait pour les sites headless qui ont besoin de paramètres globaux (nom de l’entreprise, URL sociales, CTA globaux).

Métadonnées de schéma

GET /wp-json/fieldforge/v1/schema GET /wp-json/fieldforge/v1/schema/typescript GET /wp-json/fieldforge/v1/schema/graphql

Récupérez le schéma complet de Field Forge au format JSON, ou en tant que définitions TypeScript, ou en tant que SDL GraphQL. Utilisez-le dans les pipelines de construction frontend pour maintenir les types synchronisés automatiquement.

Migration et importation

POST /wp-json/fieldforge/v1/import/acf POST /wp-json/fieldforge/v1/import/meta-box POST /wp-json/fieldforge/v1/import/cmb2

Déclenchez des importations depuis des plugins sources via l’API. Utile pour les scripts de configuration CI/CD.

Génération AI

POST /wp-json/fieldforge/v1/generate

Corps : “json { "description": "Section héroïque avec titre, sous-titre, image de fond et bouton CTA" }

Renvoie un groupe de champs généré prêt à être enregistré. Utilisez-le dans des outils d’administration personnalisés ou des workflows d’automatisation.


Authentification

L’API REST de Field Forge utilise les mécanismes d’authentification natifs de WordPress :

Authentification par cookie (utilisateurs connectés)

Si la demande provient d’un utilisateur WordPress connecté (par exemple, votre panneau d’administration effectuant des appels AJAX), les cookies de l’utilisateur authentifient automatiquement la demande.

Mots de passe d’application (frontends headless)

WordPress 5.6+ prend en charge les mots de passe d’application — des identifiants API par utilisateur qui peuvent être générés dans l’administration WordPress sous Utilisateurs → Modifier → Mots de passe d’application. Utilisez-les pour l’authentification des frontends headless :

bash curl -u username:application_password https://wp.example.com/wp-json/fieldforge/v1/field-groups

Authentification JWT (plugin tiers)

Si vous utilisez un plugin d’authentification JWT (comme “JWT Authentication for WP REST API”), les points de terminaison de Field Forge acceptent automatiquement les jetons JWT.

OAuth 2.0

Pour un usage en entreprise, les points de terminaison de Field Forge sont compatibles avec les plugins de serveur OAuth 2.0 de WordPress.


Vérifications des capacités

Les points de terminaison REST respectent les capacités de WordPress :

  • Opérations de lecture (GET) : nécessitent la capacité read (généralement tout utilisateur connecté)
  • Opérations d’écriture (POST, PUT, DELETE) sur les champs : nécessitent la capacité edit_post sur l’article cible
  • CRUD de groupe de champs : nécessitent la capacité manage_options (administrateurs uniquement)
  • Importation/migration : nécessitent la capacité manage_options

Vous pouvez filtrer ces capacités avec des hooks de capacité standard de WordPress si vous avez besoin de modèles de permission différents.


Valeurs de champs Pro sur l’API REST de WP

Field Forge expose les valeurs des champs sur les points de terminaison REST principaux de WordPress en tant que propriété fieldforge. C’est l’approche recommandée pour les frontends headless car :

  • Une demande récupère les données de l’article + les champs personnalisés (pas de problème N+1)
  • Format standard de l’API REST — aucune courbe d’apprentissage
  • Fonctionne avec les clients de l’API REST de WordPress (bibliothèques clientes wp-rest-api en JS, PHP, Python, etc.)
  • Compatible avec les générateurs de sites statiques (Next.js getStaticProps, Astro getStaticPaths, etc.)

Pour la plupart des sites headless, la propriété fieldforge sur les points de terminaison REST principaux est tout ce dont vous avez besoin. Les points de terminaison dédiés de Field Forge sont pour des cas d’utilisation avancés.


Performance sur l’API REST

Les réponses de l’API REST bénéficient du stockage de table personnalisé et du chargement par lots de Field Forge. Une seule requête REST récupérant un article + des champs personnalisés s’exécute en 1 à 2 requêtes SQL au lieu de 20+.

Pour les points de terminaison de liste (/wp/v2/posts?per_page=20), le préchargeur automatique de Field Forge regroupe les requêtes de champs personnalisés sur les 20 articles en une seule requête, maintenant des temps de réponse rapides même pour des vues de liste riches en contenu.


Combinaison avec GraphQL

Field Forge prend en charge à la fois l’API REST et l’intégration WPGraphQL. Utilisez celui qui convient le mieux à votre frontend :

  • API REST — plus simple, fonctionne avec n’importe quel client HTTP
  • GraphQL — plus efficace pour des requêtes profondément imbriquées, meilleure sécurité de type lorsqu’il est combiné avec le générateur de code GraphQL

Les deux API exposent les mêmes données sous-jacentes de Field Forge.


Prêt à passer en mode headless avec les champs personnalisés de WordPress ?

Obtenez Field Forge — à partir de 35$/an →

L’API REST est incluse dans chaque plan payant. Les valeurs des champs sur les points de terminaison REST principaux sont également disponibles dans la version gratuite.

Assistant IA Forge En ligne

Bonjour ! Je suis l'assistant IA Field Forge. Posez-moi n'importe quelle question sur le plugin — configuration, fonctionnalités, dépannage ou développement.

À l'instant
Propulsé par Forge IA · Parcourir la documentation