Accueil › Développement WordPress › WordPress Headless : créer un site moderne avec WordPress et React
Développement WordPress

WordPress Headless : créer un site moderne avec WordPress et React

Par easywpadmin · novembre 10, 2026 · 10 min de lecture

WordPress relié à une interface React par une API

Dans une architecture « headless », WordPress ne s’occupe plus que d’une chose : gérer les contenus. L’affichage (la « tête ») est confié à une autre application, souvent écrite avec React. Les équipes conservent l’interface d’administration que leurs rédacteurs connaissent, tout en profitant d’un front moderne, rapide et sur mesure.

Cette approche séduit, mais elle n’est pas toujours la bonne. Voici comment elle fonctionne, comment la mettre en place avec Next.js, et quels points surveiller, notamment pour le référencement. Pour comprendre pourquoi le SEO exige une vigilance particulière dans ce cas, lisez aussi notre article sur le SEO et l’IA.

À retenir

  • Le headless sépare WordPress (contenus) du site visible (React, Next.js).
  • Les données transitent par l’API REST ou par WPGraphQL.
  • Le rendu statique ou côté serveur est indispensable pour que Google lise bien le site.
  • Plus de liberté, mais plus de maintenance : à réserver aux projets qui en ont besoin.

1. Ce que signifie « headless »

Dans un WordPress classique, le thème récupère les contenus et fabrique les pages HTML. En mode headless, WordPress sert uniquement d’API : les contenus sont lus par une application indépendante, qui les affiche comme elle le souhaite. L’administration reste inchangée, mais la partie publique est une application distincte.

Cette séparation permet de réutiliser les mêmes contenus sur plusieurs supports : un site web, une application mobile, un écran d’affichage, une newsletter. Elle offre aussi une liberté totale de conception et de performance, puisque le front peut utiliser n’importe quelle technologie moderne.

Trajet d’un contenu depuis WordPress jusqu’au visiteur en architecture headless
WordPress gère le contenu, React gère l’affichage.

En contrepartie, tout ce qu’un thème gère automatiquement doit être reconstruit : les menus, la recherche, les commentaires, les formulaires, l’aperçu des brouillons, le SEO, le cache. Il faut donc en peser l’intérêt.

2. Quand choisir (ou éviter) cette architecture

Le headless est pertinent pour un site très interactif, un média à fort trafic, une application qui exploite des contenus WordPress, ou une équipe de développeurs à l’aise avec React. Il l’est aussi quand le même contenu alimente plusieurs canaux.

Il est inutile, voire contre-productif, pour un petit site vitrine ou un blog personnel : un thème de blocs léger, bien hébergé et bien mis en cache, offre d’excellentes performances sans la complexité d’un second projet à développer, héberger et maintenir. Vous perdez en outre la compatibilité immédiate avec de nombreuses extensions qui agissent sur l’affichage.

Bon à savoir : avant de vous lancer, listez les extensions dont vous dépendez (SEO, formulaires, cache, boutique). Beaucoup d’entre elles supposent un thème WordPress et demandent un travail supplémentaire en mode headless.

3. REST ou WPGraphQL : choisir l’API

WordPress propose nativement l’API REST, simple et prête à l’emploi. Elle suffit pour la plupart des sites, avec les paramètres _embed et _fields pour limiter le nombre de requêtes et le volume de données. Son inconvénient : on récupère souvent plus de champs que nécessaire, ou l’on doit enchaîner plusieurs appels.

WPGraphQL est une extension gratuite qui expose un point d’accès GraphQL. Le client décrit exactement les données voulues dans une seule requête : un article, son auteur, ses catégories et son image, sans rien d’autre. Cela convient aux écrans complexes et simplifie le code du front. L’extension demande en revanche l’apprentissage d’un nouveau langage de requête et une configuration soignée des accès.

query DerniersArticles {
  posts( first: 5 ) {
    nodes {
      title
      slug
      date
      featuredImage { node { sourceUrl altText } }
    }
  }
}

Quel que soit votre choix, restreignez ce que l’API expose, mettez les réponses en cache et protégez les routes d’écriture. Notre article sur le blogging en 2026 explique pourquoi la qualité du contenu reste, malgré la technique, le premier moteur de croissance.

Comparaison de l’API REST et de WPGraphQL
Les deux fonctionnent : choisissez selon la complexité du front.

4. Mettre en place Next.js avec WordPress

Next.js est le framework React le plus utilisé pour ce type de projet, car il gère le rendu côté serveur, la génération statique et le routage. Créez le projet, puis déclarez l’adresse de votre WordPress dans une variable d’environnement.

npx create-next-app@latest mon-site-headless
cd mon-site-headless
# .env.local
WP_API_URL=https://cms.votresite.fr/wp-json/wp/v2

Une page de liste lit ensuite les articles depuis WordPress. Dans l’App Router de Next.js, un composant serveur peut appeler l’API directement et s’exécuter avant l’envoi de la page au navigateur.

// app/blog/page.jsx
export const revalidate = 300; // régénérer au plus toutes les 5 min

export default async function Blog() {
  const res = await fetch(
    `${process.env.WP_API_URL}/posts?per_page=10&_embed`
  );
  const articles = await res.json();

  return (
    <main>
      <h1>Blog</h1>
      {articles.map( ( a ) => (
        <article key={a.id}>
          <h2>{a.title.rendered}</h2>
          <a href={`/blog/${a.slug}`}>Lire</a>
        </article>
      ) )}
    </main>
  );
}

Une seconde page dynamique (app/blog/[slug]/page.jsx) charge un article par son slug. Utilisez generateStaticParams pour préparer les pages à l’avance, et notFound() quand l’article n’existe pas. Pour afficher le contenu HTML renvoyé par WordPress, nettoyez-le d’abord avec une bibliothèque de filtrage avant de l’injecter dans la page.

5. Choisir le mode de rendu : statique, serveur ou hybride

Le rendu statique (SSG) génère les pages au moment de la construction du site : elles sont servies instantanément depuis un CDN, c’est la solution la plus rapide. Elle convient aux contenus qui changent peu. Le rendu côté serveur (SSR) génère la page à chaque requête : utile pour des données personnalisées ou très fréquentes, au prix d’un temps de réponse plus long.

La régénération incrémentale (ISR) combine les deux : la page est statique, mais elle est reconstruite en arrière-plan à intervalle régulier ou à la demande. Quand un rédacteur publie un article dans WordPress, un webhook peut déclencher la régénération de la page concernée et, éventuellement, des pages de liste.

Comparaison des modes de rendu statique, serveur et incrémental
SSG, SSR ou ISR : choisissez selon la fraîcheur des données.

Dans tous les cas, évitez le rendu uniquement côté navigateur pour les pages que Google doit indexer : le contenu doit se trouver dans le HTML initial. C’est le point le plus important pour le référencement, et il se vérifie avec l’outil d’inspection d’URL de Search Console.

6. Aperçu des brouillons, médias et formulaires

Les rédacteurs veulent voir leurs brouillons avant publication. Dans une architecture headless, il faut donc reconstruire l’aperçu : le bouton « Aperçu » de WordPress pointe vers une route du front qui reçoit un jeton temporaire et charge la version non publiée. Cette partie demande de l’authentification et un peu de travail, mais elle est essentielle pour l’adoption par l’équipe.

Les images doivent rester performantes : le composant Image de Next.js redimensionne et convertit automatiquement les fichiers, à condition d’autoriser le domaine de votre WordPress dans la configuration. Conservez les tailles générées par WordPress comme source et utilisez des textes alternatifs.

Pour les formulaires, envoyez les données vers une route de l’API (une route personnalisée ou une extension de formulaire qui expose l’API), avec contrôle des champs, protection anti-spam et gestion des erreurs. Les commentaires et la recherche demandent un traitement équivalent.

7. SEO en mode headless : ne rien perdre

Le référencement est le point de vigilance numéro un. Les titres, descriptions, balises canonical, données structurées et paramètres Open Graph gérés par votre extension SEO doivent être repris dans le front. Certaines extensions (Yoast, Rank Math) exposent ces données par l’API ou avec WPGraphQL : utilisez-les pour alimenter les métadonnées de chaque page.

Générez aussi un sitemap XML depuis le front, un fichier robots.txt propre, des adresses cohérentes avec celles d’origine et des redirections 301 pour tout changement d’URL. Évitez que le site WordPress d’administration reste indexable sous un autre domaine : sinon, vous créez des doublons. Placez-le en noindex ou protégez-le par authentification.

Attention : le domaine de l’administration (par exemple cms.votresite.fr) ne doit pas être indexé en parallèle du site public. Vérifiez son statut noindex et sa balise canonical pour éviter les contenus dupliqués.

Pour une boutique en ligne headless, les sujets d’indexation de fiches produits et de catégories sont encore plus sensibles : notre guide sur le SEO technique WooCommerce détaille les points à surveiller.

8. Hébergement, sécurité et coûts

Vous gérez désormais deux applications. WordPress peut rester sur un hébergement WordPress classique, de préférence protégé et accessible uniquement par l’API. Le front React se déploie sur une plateforme dédiée aux applications Next.js, ou sur votre propre serveur avec Node.js.

Sécurisez l’API : limitez l’accès en écriture, activez le HTTPS partout, gardez WordPress et les extensions à jour et ne laissez pas l’administration ouverte à tous. Placez les secrets (mots de passe d’application, jetons) dans des variables d’environnement côté serveur, jamais dans le code du navigateur.

Liste des fonctions à reconstruire dans une architecture headless
Tout ce que le thème faisait seul doit être reconstruit.

Budgétez enfin la maintenance : deux dépôts de code, deux séries de mises à jour, des tests et un suivi des erreurs. Pour un projet qui le justifie, l’investissement est rentable ; pour les autres, un bon thème de blocs reste la voie raisonnable.

Checklist : projet WordPress headless

À cocher avant de passer à autre chose

  • ☐ Le besoin justifie vraiment une architecture headless
  • ☐ REST ou WPGraphQL est choisi et sécurisé
  • ☐ Le rendu statique ou serveur fournit du contenu dans le HTML initial
  • ☐ Les métadonnées SEO sont reprises dans le front
  • ☐ Le domaine d’administration est en noindex
  • ☐ L’aperçu des brouillons fonctionne pour l’équipe
  • ☐ Les secrets restent côté serveur
  • ☐ Les mises à jour des deux applications sont planifiées

Conclusion

Le headless apporte de la liberté, de la performance et la possibilité de réutiliser vos contenus partout, mais il demande plus de développement et de maintenance qu’un WordPress classique. Réservez-le aux projets qui en tirent un vrai bénéfice, et surveillez de près le SEO, l’aperçu et la sécurité. Pour un site plus classique, un thème de blocs bien configuré reste souvent le meilleur choix. Pensez à vérifier que votre site reste visible, avec notre guide des 15 erreurs SEO à éviter.

Prochaine étape

Vous voulez que votre site soit mieux compris par les moteurs d’IA ? Découvrez comment préparer WordPress au GEO.

Préparer WordPress aux moteurs de recherche IA