La réponse en une phrase

Un webhook WordPress notifie automatiquement un outil externe dès qu’un événement précis se produit sur le site, mais il faut l’ajouter soi-même : WordPress n’en propose pas nativement sur les articles.

C’est quoi un webhook WordPress et à quoi sert-il ?

Un webhook est une notification automatique qu’un système envoie à une autre application dès qu’un événement précis se produit, sous la forme d’une requête HTTP envoyée à une URL prédéfinie. Appliqué à WordPress, cela signifie que le site peut avertir instantanément un outil externe — un workflow n8n, un canal Slack, un CRM — dès qu’un article est publié, modifié ou qu’une commande est passée, sans que cet outil ait besoin d’interroger le site en permanence pour vérifier si quelque chose a changé.

C’est l’inverse d’un appel à l’API REST classique : là où l’API répond à une question posée par un outil externe (« donne-moi les 10 derniers articles »), le webhook part dans l’autre sens — c’est WordPress qui prend l’initiative d’avertir, au moment exact où l’événement survient.

WordPress propose-t-il des webhooks nativement ?

Non, pas sur les articles. Le cœur de WordPress ne propose aucune interface native pour créer un webhook sortant sur la publication d’un article, contrairement à WooCommerce qui intègre, lui, un système de webhooks natif pour les commandes, les clients et les produits (menu Réglages → Avancé → Webhooks dans WooCommerce).

Ce que WordPress fournit en revanche, ce sont des hooks internes — des points d’accroche dans son code, comme publish_post ou transition_post_status — que l’on peut utiliser pour déclencher soi-même une action, dont l’envoi d’un webhook. La confusion entre « hook » (mécanisme interne de WordPress) et « webhook » (notification HTTP sortante) est fréquente : le second se construit à partir du premier.

Comment déclencher un webhook depuis WordPress ?

  1. 1. Choisir l’événement à surveillerPublication d’un article (publish_post), changement de statut (transition_post_status), ou un événement plus spécifique selon le besoin.
  2. 2. Accrocher une fonction à cet événementUtiliser add_action('publish_post', 'ma_fonction') dans un plugin dédié ou le fichier functions.php d’un thème enfant.
  3. 3. Envoyer la requête HTTPDans cette fonction, appeler wp_remote_post() — la fonction native de WordPress pour envoyer une requête sortante — vers l’URL du webhook cible, avec les données de l’article en JSON.
  4. 4. Ou utiliser un plugin clé en mainDes plugins comme WP Webhooks proposent la même mécanique sans écrire de code, avec une interface pour choisir l’événement et l’URL de destination.
  5. 5. Tester avec un outil de réceptionVérifier la requête reçue (avec un endpoint de test ou le nœud Webhook d’un outil comme n8n) avant de brancher l’automatisation finale.

Quels cas d’usage concrets pour un webhook WordPress ?

Notifier une équipe sur Slack

Recevoir un message automatique dans un canal dès qu’un article est publié, sans avoir à vérifier le site manuellement.

Déclencher un workflow n8n

Lancer un déclencheur webhook dans n8n qui enchaîne des actions : partage sur les réseaux, mise à jour d’un tableau de suivi, envoi d’une newsletter.

Synchroniser un CRM

Transmettre les informations d’un nouveau contenu ou d’une nouvelle commande vers un CRM sans double saisie manuelle.

Purger un cache externe

Avertir un CDN ou un service de cache tiers qu’une page a changé, pour qu’il actualise sa copie immédiatement.

Comment sécuriser ses webhooks ?

  • Toujours utiliser une URL en HTTPS pour éviter qu’un tiers intercepte les données envoyées.
  • Ajouter un secret ou une signature dans la requête, vérifié côté récepteur, pour confirmer que l’appel vient bien du site et non d’un tiers malveillant.
  • Limiter les données transmises au strict nécessaire (titre, URL, catégorie) plutôt que d’envoyer l’intégralité du contenu ou des données personnelles.
Une URL de webhook non protégée est une porte ouverte

Sans vérification côté récepteur, n’importe qui connaissant l’URL peut envoyer de fausses notifications et déclencher l’automatisation à sa place.

Ce que nous observons chez les projets que nous accompagnons

Voici un exemple représentatif de notre pratique, sans donnée client ni chiffre inventé.

Retour d’expérience Amari Agency

Un choix assumé : purger le cache par appel direct, pas par webhook

Chez Amari Agency, la routine qui publie ce blog appelle directement le point d’accès de purge de cache après chaque publication, plutôt que de déclencher un webhook externe : pour un scénario fixe exécuté par un seul programme, l’appel direct reste plus simple à surveiller. Le webhook prend tout son sens dès qu’un événement doit déclencher une réaction dans un système que l’on ne contrôle pas soi-même, comme prévenir un canal Slack partagé avec toute l’équipe.

Appel direct pour un scénario interneWebhook pour prévenir un système tiersSignature vérifiée côté récepteur

Webhook ou interrogation régulière de l’API ?

Avantages du webhook

  • Réaction immédiate, sans délai d’attente entre l’événement et l’action.
  • Pas de requêtes inutiles envoyées en boucle pour vérifier si quelque chose a changé.
  • Charge réduite côté site comparé à un polling fréquent.

Limites à connaître

  • Demande d’ajouter du code ou un plugin, WordPress ne le propose pas nativement.
  • Si la requête échoue (site externe indisponible), l’événement peut être perdu sans mécanisme de nouvelle tentative.
  • Pour un besoin ponctuel, interroger l’API directement reste parfois plus simple.

Quels contenus lire ensuite ?

Ces ressources complètent ce tutoriel sans cibler la même requête :

Questions fréquentes sur les webhooks WordPress

WordPress propose-t-il des webhooks pour les articles sans plugin ?

Non, il faut ajouter du code personnalisé ou installer un plugin dédié : WooCommerce propose des webhooks natifs sur les commandes, mais le cœur de WordPress n’en a pas sur les articles.

Quelle est la différence entre un hook WordPress et un webhook ?

Un hook est un mécanisme interne de WordPress pour exécuter du code à un moment précis ; un webhook est une notification HTTP envoyée vers l’extérieur, souvent construite à partir d’un hook.

Faut-il coder pour créer un webhook WordPress ?

Pas obligatoirement : un plugin comme WP Webhooks permet de configurer l’événement et l’URL de destination sans écrire de code.

Un webhook WordPress peut-il déclencher un workflow n8n ?

Oui, il suffit d’envoyer la requête vers l’URL du nœud Webhook créé dans n8n, qui démarre alors le workflow associé.

Que se passe-t-il si l’outil qui reçoit le webhook est indisponible ?

La requête échoue et l’événement peut être perdu, sauf si le code ou le plugin utilisé prévoit une nouvelle tentative automatique.

Sources officielles

  1. WordPress Developer Resources — Référence de la fonction wp_remote_post().
  2. WordPress Developer Resources — Référence des actions (hooks) du cœur.
  3. Documentation officielle WooCommerce — Webhooks.