13 Jan 2026
Automatiser les articles blog sur WordPress avec n8n

Un workflow n8n pour publier sur WordPress avec chatGPT

L’intelligence artificielle fait maintenant partie de mon quotidien en tant que développeur et dans mon travail en général. Je me suis enfin intéressé à l’automatisation, notamment avec n8n. Je me suis dit qu’il serait intéressant de partager une intégration pour autoposter des articles de blog sur son site WordPress. Je vais vous expliquer tout cela dans ce tutoriel.

Vous êtes développeur WordPress ou débutant cherchant à automatiser la création de contenu ? Grâce à n8n, une plateforme low-code d’automatisation, il est possible de connecter facilement Google Sheets, OpenAI et WordPress pour générer et publier des articles de blog automatiquement. Nous allons voir pas à pas comment lier un document Google Sheet à un modèle OpenAI (ChatGPT) via n8n, puis utiliser le résultat pour créer un article dans WordPress, le tout sans effort de codage important. Cette méthode est accessible à tous, qu’on soit développeur expérimenté ou novice, et permet de gagner un temps précieux en automatisant la rédaction et la publication de contenus.

Préparation : n8n, WordPress et API

Avant de commencer, assurez-vous de disposer des éléments suivants :

  • n8n (installé en local ou sur un serveur), c’est l’outil qui orchestrera notre workflow. Personnellement, j’ai pris un vps chez Hostinger (KVM 2 précisément) pour pouvoir installer la solution (automatique, rien à faire) et éviter de trop surcharger mon ordinateur. Grâce à leurs offres, j’ai pu prendre directement sur 24 mois. Maintenant, j’ai une machine qui peut faire tourner n8n, mais aussi d’autres applications pour mon site internet si j’en ai besoin.
  • Un site WordPress avec l’API REST activée. WordPress offre une API qui permet à des applications externes (comme n8n) d’interagir avec le site. Vérifiez que l’URL votre-site.com/wp-json est accessible sans erreur (mettez à jour WordPress ou activez l’API via Jetpack si nécessaire).
  • Un compte admin WordPress pour générer des identifiants API. Nous utiliserons un mot de passe d’application lié à votre utilisateur admin pour l’authentification. Attention, ce n’est pas le mot de passe de votre compte. Je vous explique cela un peu plus bas.
  • Google Sheets contenant les données de départ, par exemple, une feuille avec une liste de sujets d’articles ou de mots-clés à traiter. Je vous montre un exemple un peu plus loin. Il va falloir aussi une API Google pour connecter votre fichier Google Sheet à n8n.
  • Une clé API OpenAI, à obtenir depuis votre compte OpenAI, afin de permettre à n8n de communiquer avec le modèle GPT. Pour pouvoir l’utiliser, il va falloir charger des tokens sur votre compte OpenAI.

Créer des identifiants dans n8n

Quand vous ouvrirez n8n, vous devrez d’abord remplir des éléments d’identification (Credentials) pour chaque service que j’ai cité, c’est-à-dire WordPress, Google et OpenAI. En effet, chaque fois que vous utiliserez une de ces briques dans votre workflow, il sera nécessaire de renseigner les identifiants pour pouvoir les connecter.  Bien sûr, vous pouvez commencer à tester des automatisations sans cela, mais pour ce tutoriel, vous en aurez besoin.

credentials wordpress n8n
Voici un exemple une fois que vous avez ajouté vos identifiants

Pour ajouter un nouvel identifiant, il suffit de cliquer en haut à droite sur create credential.

Génération des identifiants API WordPress

Dans le tableau de bord WordPress, rendez-vous sur votre profil utilisateur (menu Utilisateurs > Profil). Descendez jusqu’à la section Mot de passe d’application (Application Passwords). Donnez un nom explicite (par ex. « n8n-api ») puis cliquez sur Ajouter un nouveau mot de passe d’application. WordPress va afficher une clé longue – copiez-la et gardez-la précieusement (elle ne sera plus visible une fois la page fermée). Ce mot de passe d’application, combiné à votre nom d’utilisateur, servira à authentifier n8n via l’API REST de WordPress.

générer api wordpress profil
L’API se génère ici

Maintenant vous pouvez ajouter votre api dans n8n en créant un nouvel identifiant et en cherchant le bon service.

WordPress API dans n8n
WordPress API dans n8n

Connexion de Google Sheets à n8n

Connectez votre compte Google à n8n, vous allez en avoir besoin pour la configuration du nœud. Cela permettra à n8n de lire et écrire dans vos feuilles Google.

Vous devez créer un nouvel identifiant en utilisant le service : Google Sheets OAuth2 API.

Côté Google, vous allez devoir vous connecter à Google Cloud Console et créer un projet et une api.

Je mets le lien vers la documentation n8n qui m’a permis d’activer Google Sheets dans n8n : https://docs.n8n.io/integrations/builtin/credentials/google/oauth-single-service/.

Créer une api OpenAI pour n8n

Tout comme les autres outils, vous devez créer une clé secrète dans OpenAI pour obtenir une API que vous renseignerez dans n8n.

Vous n’êtes pas obligé de le faire maintenant, mais attention, pour pouvoir ensuite utiliser cette API, vous allez devoir alimenter votre compte OpenAI avec des tokens qui vont vous permettre son utilisation.

Voici le lien direct : https://platform.openai.com/settings/organization/api-keys

Ensuite, dans n8n, vous n’avez plus qu’à aller chercher le bon service pour ajouter votre clé API.

openai cedentials n8n
Ajoutez le service OpenAI dans votre compte n8b

Créer votre workflow WordPress n8n pour créer des articles

Maintenant que vous disposez de tous vos identifiants, vous allez pouvoir créer votre workflow en intégrant les bons nœuds (node). Celui-ci permettra la création automatique de vos articles de blog sur WordPress.

Pour ma part, je suis parti d’un workflow de démonstration proposé par la solution. Je l’ai volontairement simplifié afin d’obtenir exactement ce dont nous avons besoin, ni plus ni moins.

L’objectif est qu’ensuite, vous puissiez enrichir votre propre workflow pour le rendre plus performant. De mon côté, à partir de ce workflow de démonstration, j’ai ajouté des éléments afin que WordPress interprète correctement les données et les intègre de manière fluide.

worflow pour publier automatiquement sur WordPress
Voici mon worflow pour publier automatiquement sur WordPress

Je conseil d’ailleurs de renommer au mieux chaque node contrairement à ma capture pour bien s’y retrouver.

Un Manual Trigger pour lancer l’exécution du workflow WordPress

En tout premier, on va ajouter un déclencheur manuel pour permettre l’exécution de votre workflow quand vous le souhaitez. Pour que le processus se lance, il suffira d’un clic pour que notre système aille chercher les informations dans Google Sheets. Ensuite, il enverra les données à OpenAI, puis les transférera sur WordPress.

Le Manual Trigger est un nœud de déclenchement manuel dans n8n. Il sert de point de départ à un workflow qui ne doit pas se lancer automatiquement. En d’autres termes, il permet de démarrer un flux de travail uniquement lorsque l’utilisateur clique sur le bouton “Execute Workflow” dans l’éditeur n8n, au lieu d’attendre un événement externe ou une planification horaire. Ce déclencheur est souvent utilisé comme solution de test ou pour des tâches que l’on souhaite exécuter manuellement à la demande, sans automatisme. Par exemple, on l’utilisera pour tester un workflow avant d’y ajouter un déclencheur automatique (comme un Cron ou un Webhook), ou dans les cas où l’on veut empêcher le workflow de tourner tout seul en arrière-plan.

Ajouter Google sheet dans son workflow WordPress

le deuxième nœud qu’on va ajouter, c’est un Google Sheet. Pour cela, il faut au préalable en avoir créé un dans votre Google Drive que vous pouvez nommer comme vous le souhaitez. Pour ma démonstration ici, on va faire une colonne “prompt” et une colonne “title”. Cela veut dire qu’en gros, vous allez devoir donner un titre à votre futur article de blog et écrire un prompt sur son sujet.

bien évidemment, plus tard, vous allez pouvoir améliorer votre workflow pour que ce soit OpenAI qui crée le titre aussi.

Choisissez le module Google Sheets et notamment “Get row(s) in sheet“.

node google sheet workflow wordpress
Node Google Sheet

Ensuite, double-cliquez sur l’élément pour renseigner l’identifiant que vous avez créé, la ressource Sheet Within Doument, l’opération Get Row(s), ainsi que le document et la feuille que vous souhaitez utiliser. il n’y a pas grand-chose à faire. Ça va assez vite et vous devriez avoir les informations qui remontent à droite dans Output.

paramètres google sheet n8n
Une fois exécuté, les données affichées à droite correspondent aux éléments de mon Google Sheet.

les valeurs sont bien reprises à droite, donc la connexion est bien faite et n8n arrive à lire mon fichier. Attention, vous pouvez très bien ne pas mettre de titre et après demander à OpenAI d’en créer un, comme un peu le reste des éléments et bien plus.

Edit fields pour normaliser la donnée dans n8n

Maintenant, vous allez devoir rajouter un nœud Edit Files pour permettre de préparer, nettoyer et transformer les données avant de les envoyer dans OpenAI avant de l’injecter dans WordPress. dans ce cas, la donnée n’est pas très complexe, mais il est important de faire cela.

Si jamais vous êtes pro n8n et que vous passez par là, pouvez-vous donner des conseils pour améliorer cette partie.

une fois que vous l’avez ajouté, vous utilisez le mode Manual Mapping. Ensuite, vous devrez ajouter les champs dans “Fields to set” que vous souhaitez utiliser par la suite pour OpenAI.

Dans mon exemple ci dessous on utilise ceci :

{
"title": {{$json.TITLE}},
"prompt": {{$json.PROMPT}}
}

Votre input et output de votre node doit bien renvoyer la bonne donnée.

mapping field n8n
Voici mon exemple dans ce node

J’ai utilisé une petite variable pour enlever des guillemets parasites que Google Sheets ajoute parfois autour du texte :

{{ $json["PROMPT"].replace(/^"|"$/g, "") }}

Générer votre article blog WordPress dans OpenAi

C’est l’étape de création de contenu dans OpenAI, avant de l’injecter dans votre site WordPress.

Ajoutez un nouveau nœud à la suite, cherchez OpenAI et prenez la version “Message a model“. Vous pouvez vous référer à l’image de mon workflow un peu plus haut.

Ensuite, vous devez renseigner plusieurs informations : le compte que vous avez connecté, la ressource Text, le modèle GPT, puis compléter la section “Messages”.

Il faut ajouter un type “Text”, un rôle “User”, ainsi que votre prompt.

⚠️ Attention : il ne s’agit pas du prompt provenant de votre Google Sheet, ce qui peut prêter à confusion. Il s’agit bien du prompt que vous écririez directement dans ChatGPT pour générer votre article de blog.

Voici un exemple en reprenant les éléments au format JSON. Adaptez le texte selon vos besoins :

Tu es rédacteur web spécialisé en SEO.

Rédige un article optimisé pour le référencement, en FRANÇAIS, sur le sujet suivant :
{{ $json.prompt }}

CONSIGNES DE RÉDACTION :

Dans l’introduction, présente le sujet et annonce ce qui sera développé dans la suite

L’introduction doit faire environ 60 mots

La conclusion doit faire environ 60 mots

La conclusion doit récapituler les points clés et donner un message clair à retenir

Rédige 2 à 3 sections maximum

Les sections doivent s’enchaîner логiquement, sans redites

Les sections doivent être reliées entre elles (pas des blocs indépendants)

Ne commence pas les sections par “Chapitre 1”, “Chapitre 2”, etc. Utilise uniquement des titres explicites

Utilise UNIQUEMENT du HTML avec ces balises : <p>, <strong>, <em>, <ul>, <li>

N’utilise pas de Markdown

N’entoure pas la sortie avec ```html

Traite le sujet en profondeur : pas de contenu superficiel
Un prompt simplifié SEO pour chatGPT dans n8n

Ensuite, dans les options, ajoutez un “Maximum Number of Tokens” afin d’éviter d’utiliser l’ensemble de vos tokens pour un seul article de blog.

Dans le prompt, je lui demande une sortie spéciale parce que ça va nous aider pour la suite, mais aussi si vous voulez faire évoluer votre workflow. J’ai déjà fait une autre version pour intégrer automatiquement des metatitles et des metadescriptions créées par ChatGPT dans des champs spécifiques à mon plugin SEO dans WordPress. Mais ça, c’est un autre sujet. Dans tous les cas, avec cette version, vous allez pouvoir mieux formater les données par la suite.

chatGPT dans mon workflow n8n pour WordPress
On peut voir, à droite après l’exécution, que le texte est bien généré par ChatGPT.

À quoi sert le node JavaScript après ChatGPT dans n8n ?

Ce node JavaScript sert à mettre de l’ordre dans la réponse de ChatGPT avant de l’envoyer à WordPress. ChatGPT renvoie toujours du texte brut, même quand on lui demande du JSON. Le script récupère donc ce texte, vérifie qu’il est bien au bon format, puis le transforme en données propres et exploitables (contenu de l’article, meta title, meta description). Si la réponse est mal formée, le workflow s’arrête immédiatement, ce qui évite d’envoyer des données cassées à WordPress. S’il est valide, le JavaScript ne garde que les champs utiles et les prépare pour la publication.

En résumé, ce node agit comme un filtre de sécurité et de nettoyage entre ChatGPT et WordPress, pour garantir une automatisation fiable et propre. Et surtout, il est très utile le jour où vous allez devoir créer des champs qui n’existent pas dans le node WordPress, comme les métas.

Ajoutez un node Javascript et collez ceci :

// Récupération du texte brut généré par OpenAI
const raw = $json.output[0].content[0].text;

// Sécurité : on essaie de parser le JSON
let parsed;

try {
parsed = JSON.parse(raw);
} catch (e) {
throw new Error("Le JSON retourné par OpenAI est invalide");
}

// On retourne un item propre
return [
{
json: {
content_html: parsed.content_html,
meta_title: parsed.meta_title,
meta_description: parsed.meta_description
}
}
];
Node javacript pour la date avant WordPress dans n8n
Voici le résultat, dans le output vous devez avoir votre texte

Publier votre article sur WordPress avec n8n

Vous êtes à la dernière étape, il va falloir publier votre article sur WordPress. Donc, vous allez devoir ajouter un node WordPress et ajouter vos identifiants avec une ressource POST en opération “Create”.

Dans “title” vous allez reprendre votre JSON et le titre de votre article :

{{$json.title}}

Ensuite, dans “Additional Fields” vous ajoutez “Content” et votre JSON qui permet de reprendre votre article :

{{$json.content}}

Sur le statut, vous pouvez choisir entre Publier ou Brouillon en général. Je préconise de laisser en Brouillon pour vérifier dans votre WordPress si tout a bien été écrit.

Une fois que vous avez tout exécuté, vous devez avoir le retour correct des éléments. Vous pouvez ensuite vérifier dans le back-office de WordPress si cela a été publié.

Node WordPress dans n8n
Voici mon node WordPress

Et suite à l’exécution complète de mon workflow n8n WordPress, mon article est arrivé dans l’administration de mon WordPress. Je peux maintenant l’éditer, puisqu’il est en brouillon, avant de le publier définitivement.

Article WordPress publié depuis n8n
Mon article est bien dans WordPress

Pourquoi mon article WordPress n’est pas publié depuis n8n ?

Si c’est la première fois que vous travaillez sur un workflow, il est possible que vous rencontriez des erreurs, même en suivant ce tutoriel. Elles peuvent avoir plusieurs origines, qu’il faudra identifier en lisant attentivement les messages d’erreur affichés dans la section “Output”, à droite de vos nœuds notamment.

Vérifiez les identifiants et les autorisations dans n8n

Un des points les plus importants, c’est de vérifier que vos identifiants que vous avez renseignés dans votre contenu n8n fonctionnent bien. Aussi, si vous dupliquez les workflows, il peut y avoir des interférences entre les API et donc il faut corriger cela. C’est vrai que j’ai passé un moment à établir une bonne connexion sur les identifiants, mais une fois que c’est fait, vous n’avez plus à y toucher.

Vous devez également vérifier les autorisations, notamment dans votre Google Console. Si, dans la bibliothèque, vous n’avez pas sélectionné la bonne API, la connexion ne fonctionnera pas, par exemple.

Le mapping des champs entre Google Sheet et n8n

Il faut aussi faire attention aux noms de vos colonnes dans votre Google Sheet, qui doivent être bien repris ensuite dans votre workflow. Faites attention aux majuscules et aux minuscules, et reprenez chaque étape entre chaque nœud pour que cela fonctionne bien. Attention aux accents, évitez d’en mettre.

Mauvais enchaînement ou configuration des nœuds n8n

Un nœud ou node peut être exécuté sans dépendre correctement du précédent, ou avec une action mal choisie (ex. : lecture au lieu d’écriture). Cela peut entraîner des erreurs logiques ou des résultats vides dans l’output.

Une données manquantes ou mal formatées

Un nœud attend une donnée précise (champ vide, mauvais nom de clé JSON, type incorrect) qui n’est pas fournie par le nœud précédent. C’est une cause fréquente d’erreur lorsque l’on manipule des expressions ou du JSON.

Un plugin de sécurité bloque votre API WordPress via n8n

C’est un cas récurrent. Il est possible que vous ne puissiez pas générer de mot de passe API WordPress parce qu’un plugin de sécurité le bloque. Même si le mot de passe a bien été créé, certains plugins de sécurité peuvent empêcher les connexions API afin de se protéger contre les logiciels malveillants.

C’est pour cette raison que la publication sur WordPress peut échouer. Il est donc nécessaire de vérifier les réglages de votre plugin de sécurité.

Comment améliorer mon Workflow n8n WordPress ?

Je vous ai donné une base pour créer le bon workflow. Vous êtes désormais en mesure de l’éditer et de l’améliorer comme bon vous semble. Il existe de nombreux axes d’amélioration.

Générer les métas SEO WordPress dans mon worfklow n8n

Vous pouvez améliorer le processus en ajoutant la génération des métadonnées SEO avec ChatGPT. Pour ma part, j’ai rencontré des difficultés avec le plugin SEOPress. J’ai donc adapté mon workflow en conséquence afin de générer correctement ces métadonnées et surtout de les faire remonter correctement dans WordPress. C’était la partie la plus complexe mais tout fonctionne bien.

Ne pas recréer un article déjà présent sur WordPress

Si vous modifiez toujours le même fichier Google Sheets et que vous relancez l’exécution de votre workflow, il est possible que des articles soient générés en double.

C’est pour cette raison qu’il est important de personnaliser votre processus, par exemple en utilisant un identifiant d’article, un tag ou toute autre logique permettant à votre automatisation de comprendre que l’article existe déjà.

Créer des images dans WordPress depuis n8n

Ici, il s’agit d’une étape un peu plus avancée. Aujourd’hui, il existe plusieurs IA permettant de générer des images.

ChatGPT n’étant pas forcément la solution la plus adaptée pour cet usage, vous pouvez faire évoluer votre workflow en intégrant d’autres IA afin de générer l’image à la une de l’article ou des visuels intégrés au cœur du contenu, et les publier en même temps que le texte.

Conclusion

L’automatisation avec n8n offre un gain de temps considérable pour les créateurs de contenu WordPress. En connectant Google Sheets, OpenAI et l’API REST, il devient facile de générer et publier des articles sans coder. Ce type de workflow améliore la productivité tout en gardant le contrôle sur la qualité éditoriale. Accessible aux débutants comme aux développeurs, c’est une approche moderne pour alimenter un blog de façon régulière. Une belle opportunité d’allier IA, no-code et WordPress au service du contenu. Si vous souhaitez optimiser votre site en performance, je vous invite à lire mon article Nouveautés techniques sur mon site WordPress pour vous aider dans cette démarche.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *