WordPress vers Instagram, Google Business Profile et plus avec Zapier (Gratuit et Automatique)

Si vous êtes un blogueur, un entrepreneur, un commerçant ou un marketeur digital utilisant WordPress, vous savez combien il est crucial de partager vos nouveaux articles sur les réseaux sociaux pour maximiser leur portée. Surtout depuis que les IA ont inversé le sens de création de contenu, en redonnant une priorité accrue au contenu publié sur les sites des marques. Mais publier manuellement sur Instagram, Google Business Profile, et d’autres plateformes peut être chronophage. Heureusement, avec Zapier, vous pouvez automatiser ce processus gratuitement (sous certaines limites) et simplifier votre stratégie de marketing digital. Dans cet article, je vais vous montrer :

  • comment je relaie automatiquement mes articles WordPress vers Instagram, Google Business Profile, et même d’autres réseaux sociaux, en utilisant une méthode simple et efficace, sans plugin tiers et sans payer ;
  • comment je paramètre la longueur de l’extrait ;
  • et comment je permets la coupe automatique de l’extrait à la fin d’une phrase pour un rendu naturel.

Cette méthode me permet ainsi de proposer des offres et de communiquer autour des nouveautés de mes enseignes, et le tout en centralisant cela depuis mes sites WordPress. Suivez ce tutoriel étape par étape !

Pourquoi automatiser le partage de vos articles WordPress ?

  • Gain de temps : Plus besoin de copier-coller manuellement vos articles sur chaque plateforme.
  • Cohérence : Assurez une présence régulière sur vos réseaux sociaux.
  • Portée accrue : Touchez votre audience là où elle se trouve, que ce soit sur Instagram, Google Business Profile, ou ailleurs.
  • Pour le référencement SEO mais aussi le AIO : en publiant régulièrement depuis votre site web vers les plateformes sociales, vous remettez votre site web au centre de votre stratégie digitale, ce qui va de le sens du grand retour au SEO via les IA, et ce sont des sujets que j’aborde dans mon guide spécial « Le SEO pour les IA ».

Exemple

Pour vous donner rapidement une idée de ce que ça peut donner, voici un article rédigé sur le blog de mon enseigne de restauration, relayé ici automatiquement sur Instagram et ici sur Google Business Profile, sans avoir à publier quoique ce soit sur ces plateformes.

Prérequis

Avant de commencer, assurez-vous d’avoir :

  • Un blog WordPress, qui deviendra le système nerveux de votre communication web.
  • Un compte Instagram Business (nécessaire pour publier via Zapier).
  • Un compte Google Business Profile connecté à vos établissements.
  • Un compte Zapier (la version gratuite suffit pour ce tutoriel, avec une limite de 100 tâches par mois, ce qui est amplement suffisant pour un commerce, un restaurant, etc).

Zapier propose une offre gratuite qui permet jusqu’à 100 tâches par mois (une tâche = une action exécutée, comme un post sur Instagram). Cela devrait suffire pour un blog avec quelques publications mensuelles.

Étape 1 : Personnaliser l’extrait de vos articles WordPress avec excerpt.raw

Pour que Zapier puisse partager un extrait propre et optimisé de vos articles, nous allons personnaliser l’extrait dans l’API REST de WordPress en ajoutant un champ excerpt.raw (texte brut). Cela évite d’avoir à nettoyer les balises HTML dans Zapier.

Création d’un snippet dédié pour générer excerpt.raw

Ajoutez ce code dans le fichier functions.php de votre thème WordPress (ou via un plugin comme Code Snippets) :

function tulipemedia_rest_excerpt($response, $post, $request) {
    if ($post->post_type !== 'post') {
        return $response;
    }

    $max_chars = 800;
    $text = !empty($post->post_excerpt) ? $post->post_excerpt : get_the_content(null, false, $post);
    $text = strip_shortcodes($text);
    $text = wp_strip_all_tags($text);
    $text = trim($text);

    // Approximation : 1 mot ≈ 6 caractères
    $word_count = round($max_chars / 6); // ~133 mots
    $text = wp_trim_words($text, $word_count, '');

    // Chercher la dernière ponctuation
    $punctuations = ['.', '!', '?'];
    $last_punct_pos = -1;
    foreach ($punctuations as $p) {
        $pos = mb_strrpos($text, $p);
        if ($pos !== false && $pos > $last_punct_pos) {
            $last_punct_pos = $pos;
        }
    }
    if ($last_punct_pos !== -1) {
        $text = mb_substr($text, 0, $last_punct_pos + 1);
    } else {
        $text .= '...';
    }

    $response->data['excerpt']['raw'] = $text;
    $response->data['excerpt']['rendered'] = wpautop($text);
    return $response;
}
add_filter('rest_prepare_post', 'tulipemedia_rest_excerpt', 10, 3);

Explication du code

1. Génération d’un extrait d’environ 800 caractères (~133 mots)

Le code commence par récupérer le contenu de l’article et le transforme en un extrait d’environ 800 caractères si aucun extrait manuel n’est défini. Voici comment cela fonctionne :

  • Récupération du contenu :

$text = !empty($post->post_excerpt) ? $post->post_excerpt : get_the_content(null, false, $post);

Si un extrait manuel (post_excerpt) est défini dans l’éditeur WordPress, il est utilisé. Sinon, le contenu complet de l’article est récupéré avec get_the_content. A ce titre, lorsque vous avez le temps, n’hésitez pas à personnaliser l’extrait dans WordPress, c’est toujours bien. Néanmoins, si vous n’avez pas le temps ou que le début de votre article est naturellement optimisé pour constituer un bon extrait, c’est là que ce tutoriel prend tout son sens, car nous allons générer un extrait optimisé pour les réseaux sociaux automatiquement.
  • Nettoyage du contenu :

$text = strip_shortcodes($text);
$text = wp_strip_all_tags($text);
$text = trim($text);

    • strip_shortcodes supprime les shortcodes WordPress.
    • wp_strip_all_tags enlève toutes les balises HTML.
    • trim supprime les espaces inutiles.
  • Coupe à environ 800 caractères :

$post);$max_chars = 800;
$word_count = round($max_chars / 6); // ~133 mots
$text = wp_trim_words($text, $word_count, '');

  • $max_chars = 800 définit la longueur cible en caractères.
  • L’approximation round($max_chars / 6) convertit cette longueur en mots, en supposant qu’un mot fait environ 6 caractères en français (par exemple, 800 ÷ 6 ≈ 133 mots).
  • wp_trim_words($text, $word_count,  ») coupe le texte à environ 133 mots, sans ajouter de suffixe (comme …).

2. Génération d’un extrait d’environ 800 caractères (~133 mots)

Après avoir coupé à ~800 caractères, le code ajuste l’extrait pour qu’il se termine à la dernière ponctuation forte, pour un rendu naturel :

  • Recherche de la dernière ponctuation :

$punctuations = ['.', '!', '?'];
$last_punct_pos = -1;
foreach ($punctuations as $p) {
$pos = mb_strrpos($text, $p);
if ($pos !== false && $pos > $last_punct_pos) {
$last_punct_pos = $pos;
}
}

    • $punctuations définit les signes de ponctuation à rechercher (., !, ?).
    • mb_strrpos trouve la position de la dernière occurrence de chaque signe dans le texte.
    • $last_punct_pos conserve la position la plus éloignée trouvée.
  • Coupe à cette position :

$if ($last_punct_pos !== -1) {
$text = mb_substr($text, 0, $last_punct_pos + 1);
} else {
$text .= '...';
}

    • Si une ponctuation est trouvée ($last_punct_pos !== -1), mb_substr coupe le texte à cette position (incluant le signe de ponctuation).
    • Sinon, ajoute … à la fin pour indiquer que l’extrait est tronqué.

En définitive, ce code :

  • Génère un extrait d’environ 800 caractères (~133 mots) à partir du contenu de l’article, si aucun extrait manuel n’est défini.
  • Coupe l’extrait à la dernière ponctuation (., !, ?) pour un rendu naturel.
  • Expose l’extrait brut dans excerpt.raw (sans balises HTML) et l’extrait formaté dans excerpt.rendered (avec balises <p> et <br />) si besoin.

Comment personnaliser ce code selon ses besoins ?

1. Modifier la longueur de l’extrait

Pour changer la longueur cible (par exemple, de 800 à 500 caractères) :

  • Ajuste $max_chars : $max_chars = 500; // Remplace 800 par la longueur désirée en caractères
  • Impact : $word_count = round($max_chars / 6) recalculera automatiquement le nombre de mots (par exemple, 500 ÷ 6 ≈ 83 mots), en considérant que la longueur moyenne d’un mot est d’environ 6 caractères, et wp_trim_words coupera à cette nouvelle longueur.
  • Exemple : Si vous voulez un extrait plus court (280 caractères par exemple), définis $max_chars = 280.

2. Modifier l’approximation caractères/mots

L’approximation actuelle (1 mot ≈ 6 caractères) est adaptée au français, mais cela peut varier selon la langue ou le style d’écriture. Pour ajuster :

  • Changez le diviseur : $word_count = round($max_chars / 5); // Si un mot fait en moyenne 5 caractères
  • Exemple : pour 800 caractères, cela donnerait 800 ÷ 5 ≈ 160 mots.

3. Modifier les signes de ponctuation

Pour ajouter ou retirer des signes de ponctuation à rechercher (par exemple, ajouter … ou 😉 :

  • Ajustez $punctuations : $punctuations = ['.', '!', '?', '…', ';'];
  • Impact : Le code cherchera aussi … et ; pour couper l’extrait, ce qui peut être utile si le contenu utilise ces signes fréquemment.

4. Changer le suffixe de troncature

Si aucune ponctuation n’est trouvée, le code ajoute …. Pour utiliser un autre suffixe (par exemple, [Lire la suite]), modifiez cette ligne :

  • Ajuste le suffixe : $text .= '[Lire la suite]'; // Remplacez '...' par le suffixe souhaité
  • Exemple : Cela peut être utile pour encourager les lecteurs à cliquer sur un lien vers l’article complet. Attention, Google Business dispose déjà de son bouton d’appel à l’action.

Exemple de code personnalisé

Voici le code modifié avec une longueur de 500 caractères, un diviseur de 5 caractères par mot, des ponctuations supplémentaires, et un suffixe personnalisé :

function tulipemedia_rest_excerpt($response, $post, $request) {
if ($post->post_type !== 'post') {
return $response;
}

$max_chars = 500; // Longueur cible : 500 caractères
$text = !empty($post->post_excerpt) ? $post->post_excerpt : get_the_content(null, false, $post);
$text = strip_shortcodes($text);
$text = wp_strip_all_tags($text);
$text = trim($text);

// Approximation : 1 mot ≈ 5 caractères
$word_count = round($max_chars / 5); // ~100 mots
$text = wp_trim_words($text, $word_count, '');

// Chercher la dernière ponctuation
$punctuations = ['.', '!', '?', '…', ';'];
$last_punct_pos = -1;
foreach ($punctuations as $p) {
$pos = mb_strrpos($text, $p);
if ($pos !== false && $pos > $last_punct_pos) {
$last_punct_pos = $pos;
}
}
if ($last_punct_pos !== -1) {
$text = mb_substr($text, 0, $last_punct_pos + 1);
} else {
$text .= '[Lire la suite]';
}

$response->data['excerpt']['raw'] = $text;
$response->data['excerpt']['rendered'] = wpautop($text);
return $response;
}
add_filter('rest_prepare_post', 'tulipemedia_rest_excerpt', 10, 3);

Testez cela en accédant à l’API REST de votre blog, par exemple : monsite.com/wp-json/wp/v2/posts/ID en remplaçant ID par l’ID d’un article test. Cherchez le champ excerpt.raw dans la réponse JSON pour confirmer qu’il est bien présent, avec la longueur désirée.

Étape 2 : Créer un compte Zapier et configurer le Zap

Inscrivez-vous sur Zapier et créez un compte gratuit. La version gratuite permet jusqu’à 100 tâches par mois, ce qui est suffisant pour quelques publications mensuelles.

Créez un nouveau Zap : Cliquez sur « Create Zap » dans le tableau de bord Zapier.

Trigger : Nouveau post WordPress

Choisissez l’app « WordPress » comme déclencheur (trigger), puis sélectionnez l’événement « New Post » : cela déclenchera le Zap à chaque nouvelle publication d’article.

Zapier vous demandera l’URL de votre site et vos identifiants WordPress (nom d’utilisateur et mot de passe, ou une méthode d’authentification via un plugin si nécessaire). Si vous utilisez un plugin de sécurité, vous devrez peut-être activer l’API REST ou créer un utilisateur spécifique pour Zapier.

Testez le trigger : Publiez un article de test ou sélectionnez un article existant (comme l’article ID 9941 si vous en avez un). Zapier devrait récupérer les données de l’article, y compris Excerpt Raw.

Action 1 : Publier sur Instagram

Ajoutez une action : Cliquez sur le « + » pour ajouter une étape.

Choisissez l’app « Instagram for Business » et l’action « Publish Photo ». Vous devez avoir un compte Instagram Business connecté à une page Facebook. Connectez votre compte Instagram Business en suivant les instructions pour connecter votre compte via Facebook. Vous devrez autoriser Zapier à accéder à votre page Instagram Business.

WordPress vers Instagram via Zapier

Configurez l’action :

  • Photo : Sélectionnez l’URL de l’image de votre article (Featured Media URL dans les données WordPress).
  • Caption : Utilisez le champ Excerpt Raw pour la légende. Vous pouvez aussi ajouter le titre de l’article et un lien vers celui-ci (par exemple, Title + Excerpt Raw + Link).

Voici personnellement la légende que j’ai choisie pour donner une idée :

{{excerpt__raw}}

RETROUVEZ L’INTÉGRALITÉ DU POST SUR LE BLOG LIBSHOP 👉 {{link}}
#libshop #restaurant #paris

Ensuite, testez l’action en envoyant un test à Instagram. Vérifiez que le post apparaît sur votre profil Instagram Business avec la légende et l’image correctes.

Action 2 : Publier sur Google Business Profile

Ajoutez une autre action : Cliquez sur le « + » pour ajouter une nouvelle étape. Choisissez l’app « Google Business Profile » et l’action « Create Post ». Connectez votre compte Google, sélectionnez le profil de l’établissement que vous voulez utiliser, et configurez l’action :

  • Summary : Utilisez Excerpt Raw pour le contenu du post.
  • Action Button Url : {{link}}
  • Photo Source URL : Featured Media URL.

Testez l’action en envoyant un test à Google Business Profile. Vérifiez que le post apparaît sur le profil de votre établissement.

WordPress vers Google Business Profile via Zapier

Action 3 : Publier sur d’autres plateformes (optionnel)

Vous pouvez ajouter d’autres plateformes prises en charge par Zapier (toujours dans la limite gratuite de 100 tâches par mois). Vous pouvez par exemple rajouter LinkedIn à l’automatisation pour partager votre article sur votre profil ou une page LinkedIn. Configurez là aussi le message avec Excerpt Raw et Link, ainsi que Featured Media URL.

Étape 3 : Testez et activez votre Zap

  • Testez toutes les actions : Assurez-vous que chaque plateforme (Instagram, Google Business Profile, et autres) reçoit correctement les publications.
  • Activez le Zap : Une fois que tout fonctionne, activez le Zap en cliquant sur « Turn on Zap ».
  • Surveillez vos tâches Zapier : Avec la version gratuite, vous êtes limité à 100 tâches par mois. Chaque publication sur une plateforme compte comme une tâche (par exemple, 1 article publié sur Instagram + Google Business Profile = 2 tâches). Si vous publiez 5 articles par mois sur 3 plateformes, cela fait 15 tâches, ce qui reste largement dans la limite gratuite.

Conclusion

Avec Zapier, automatiser le partage de vos articles WordPress vers Instagram, Google Business Profile, et d’autres plateformes est un jeu d’enfant, même avec un compte gratuit. En utilisant excerpt.raw, vous vous assurez que vos extraits sont propres et prêts à être publiés sans nettoyage supplémentaire. Essayez cette méthode sur votre blog et gagnez du temps pour vous concentrer sur la création de contenu de qualité pour votre audience et vos clients !

Avez-vous d’autres astuces pour automatiser votre marketing digital avec WordPress ? Partagez-les dans les commentaires !

Ne manquez pas les conseils business par mail

Pas de spam, juste un mail lorsqu'un nouveau contenu est publié.

Laisser un commentaire

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

Ne manquez pas les conseils business par mail

Pas de spam, juste un mail lorsqu'un nouveau contenu est publié.

fr_FR