Connectez le Site
Plateforme de publication
Pas sûr ? Discutez avec nous sur le support ou envoyez un e-mail à [email protected]
Vous ne savez pas comment vous connecter ? Nous pouvons héberger votre blog gratuitement.
Ajoutez un enregistrement DNS et nous nous occupons du reste. Vos articles d’expert sont publiés automatiquement et commencent à vous apporter des clients depuis les moteurs IA et Google.
- Articles publiés et hébergés pour vous automatiquement
- Configuration simple — pas de extensions, pas de code, pas de compétences techniques nécessaires
- Inclus dans votre plan sans coût supplémentaire
Quelle est l'URL de votre site WordPress ?
Nous vérifierons que WordPress fonctionne sur votre site
Vous pouvez entrer avec ou sans https://
WordPress non détecté
Choses à vérifier :
- Assurez-vous d'avoir saisi l'URL correcte
- Vérifiez que votre site est accessible au public
- Vérifier que WordPress est installé (pas en mode maintenance)
Installer le plugin AutoSEO
Nous vous emmènerons à votre page de plugin WordPress. Installez AutoSEO à partir de là.
WordPress détecté !
Voici ce que vous verrez :
Le plugin AutoSEO dans vos résultats de recherche de plugins WordPress
Après avoir cliqué sur le bouton ci-dessous :
- 1 Trouvez "AutoSEO - AI Content Publisher" dans les résultats de recherche
- 2 Cliquez sur "Installer maintenant" puis "Activer"
- 3 Revenez ici pour votre clé API
Connexion à Votre Site WordPress...
Nous vérifions l'installation du plugin automatiquement.
Astuce : Assurez-vous d'avoir activé le plugin AutoSEO dans WordPress.
Connecté avec succès !
Votre site WordPress est maintenant lié à AutoSEO. Pas besoin de clé API !
Vos articles seront publiés automatiquement sur votre site WordPress.
Entrez votre clé API
La connexion automatique n'était pas disponible. Copiez votre clé API dans les paramètres du plugin.
Gardez cette clé en sécurité. Vous pouvez la régénérer à tout moment depuis la page des intégrations.
Dans votre admin WordPress :
- 1 Allez à AutoSEO dans votre barre latérale WordPress (ou cliquez sur l'avis de configuration)
- 2 Collez votre clé API dans le champ "Clé API"
- 3 Cliquez sur "Configuration complète" — vous êtes tous ensemble !
Préférez-vous installer le plugin manuellement ?
Certains hébergeurs et équipes informatiques n'autorisent pas les installations depuis le répertoire des plugins WordPress. Téléchargez le ZIP ici et téléchargez-le directement dans Plugins → Ajouter Nouveau → Télécharger Plugin.
getautoseo-ai-tool.zip
demo-key-hidden
Coller cela dans les paramètres du extension après l'activation.
Comment le télécharger sur WordPress
- 1 Dans votre admin WordPress, allez dans Extensions → Ajouter une nouvelle extension.
-
2
Cliquez sur Télécharger le plugin en haut, puis choisissez le fichier
getautoseo-ai-tool.zipque vous venez de télécharger. - 3 Cliquez sur Installer maintenant, puis sur Activer le plugin.
- 4 Collez la touche API ci-dessus dans les paramètres du extension, puis cliquez sur Configuration complète.
CMS Webflow
Connectez votre site Webflow pour publier des articles directement dans vos collections CMS
Connectez avec le Token API
Générez un jeton dans les paramètres de votre site Webflow et collez-le ci-dessous. Cela prend environ 2 minutes.
Comment obtenir votre jeton API
Suivez ces étapes dans votre tableau de bord Webflow. Cliquez sur n'importe quelle image pour agrandir.
Ouvrez les paramètres de votre site
Allez à webflow.com/dashboard, trouvez votre site et cliquez sur l'icône Paramètres (engrenage).
Allez à Applications et intégrations
Dans la barre latérale gauche, cliquez sur Applications & Intégrations.
Générer un jeton API
Faites défiler vers le bas jusqu'à la section Accès API et cliquez sur Générer le jeton API.
Définir les autorisations : Sites → Lecture et Écriture
Dans la boîte de dialogue des autorisations, définissez Sites sur Lire et écrire.
Définir les autorisations : CMS → Lecture et Écriture
Définissez également CMS sur Lire et écrire. Cela nous permet de publier des articles dans vos collections.
Nommez votre jeton et générez
Donnez-lui n'importe quel nom (par exemple "AutoSEO"), confirmez que le CMS est réglé sur Lire et écrire, puis cliquez sur Générer le jeton.
Copiez votre jeton
Copiez le jeton et collez-le dans le champ ci-dessus. Webflow ne l'affiche qu'une seule fois — si vous le perdez, vous devrez en générer un nouveau.
Dépannage & FAQ
Vous ne voyez que le Nom et le Slug dans le mapping des champs ?
Votre collection CMS nécessite l'ajout de champs personnalisés dans le Designer de Webflow. Au minimum, ajoutez un champ Texte enrichi pour le contenu de l'article. Vous pouvez également ajouter un champ Image (image principale), Texte brut (résumé), et un champ Date/Heure (date de publication). Après avoir ajouté des champs dans Webflow, cliquez sur "Rafraîchir les champs" dans l'étape de mappage des champs.
Le contenu du blog ne s'affiche pas dans l'éditeur Webflow ?
C'est un problème connu de Webflow. Le contenu peut ne pas s'afficher correctement dans l'éditeur Webflow (code visible, mise en page cassée). Votre contenu se publie correctement et sera visible sur votre site web en direct.
Site ou collection non affiché ?
Assurez-vous que votre jeton a les permissions CMS: Lire et Écrire et Sites: Lire et Écrire. Si vous avez changé les permissions, générez un nouveau jeton.
Échecs de publication ?
Confirmer que le jeton est toujours valide et que la collection existe. Vérifiez que le nombre d'éléments ou les limites de champ dans Webflow n'ont pas été dépassés.
Que faire si je régénère mon jeton API ?
L'ancien token cesse de fonctionner immédiatement. Déconnectez-vous ici, puis reconnectez-vous avec le nouveau token.
Les articles seront-ils publiés immédiatement ?
Seulement si vous activez la publication automatique dans les paramètres de votre site. Sinon, les articles sont créés en tant que brouillons afin que vous puissiez les examiner d'abord dans Webflow.
Ai-je besoin d'un plan Webflow spécifique ?
Vous avez besoin d'un plan Webflow qui inclut l'accès CMS et les capacités API (plan CMS ou supérieur).
Mauvais espace de travail ou site ?
Chaque site a besoin de son propre jeton API. Assurez-vous d'avoir généré le jeton à partir des paramètres du bon site dans Webflow.
Ce que vous obtenez
Publication directe
Poussez automatiquement les articles vers les collections CMS
Cartographie des champs
Personnalisez la façon dont le contenu correspond à vos champs
Publication automatique
Publication automatique optionnelle sur votre site en direct
Supprimer complètement le site ?
Cette action ne peut pas être annulée. Tout ce qui suit sera définitivement supprimé :
- Tous les articles et contenus
- Termes de recherche et calendrier de contenu
- Connexion Webflow et mappages de champs
- Analyse et paramètres commerciaux
- Données de Google Search Console
Remarque : les articles déjà publiés sur votre site Webflow y resteront. Cela ne supprime que les données d'AutoSEO.
Sélectionner le site Webflow
Chargement des sites...
Choisissez quel site Webflow vous souhaitez publier des articles :
Sélectionner la collection CMS
Chargement des collections...
Choisissez quelle collection CMS publier des articles :
Assurez-vous que votre collection a un champ Rich Text pour le contenu des articles. Si vous n'avez que le Nom et le Slug, ajoutez d'autres champs dans le Designer de Webflow d'abord.
Cartographier les Champs
Cartographiez vos champs d'article aux champs CMS de Webflow :
Synchronisation de vos articles
Veuillez patienter pendant que nous publions vos articles sur Webflow...
Préparation des articles...
🎉 Tout Est Fait !
Votre intégration Webflow est complète !
Erreur de synchronisation
Blog de la boutique Shopify
Publiez automatiquement vos articles d'expert sur votre blog Shopify. Votre contenu attire des clients vers votre boutique.
Installer AutoSEO sur votre boutique Shopify
Publiez automatiquement des articles optimisés pour le SEO sur votre blog Shopify.
Ce que vous obtenez
Publication automatique
Les articles se publient automatiquement sur votre blog Shopify
Optimisé pour le SEO
Contenu optimisé pour amener des clients dans votre magasin
Support multilingue
Publier en plusieurs langues pour les magasins internationaux
Sélectionner le blog Shopify
Chargement des blogs...
Choisissez quel blog vous souhaitez publier des articles :
Échec du chargement des blogs. Veuillez réessayer.
Intégration du blog Wix
Publiez vos articles optimisés pour le SEO directement sur votre blog Wix. Connectez-vous une fois et laissez votre contenu travailler pour vous.
Connectez Votre Site Wix
Entrez votre ID de site Wix et votre clé API pour commencer à publier des articles sur votre blog Wix automatiquement.
Ouvrez votre tableau de bord Wix — l'ID du site est dans l'URL après Dashboard/
Générez une clé API dans Wix : Avatar → Paramètres du compte → Clés API. Choisissez Tous les sites sans limiter la clé à un seul site. Activez Wix Contacts & Wix Blog. Le propriétaire du compte Wix doit créer la clé.
Trouvez votre ID de site
Ouvrir votre tableau de bord Wix. Dans la barre d'adresse, copiez l'ID après dashboard/.
Ouvrir les paramètres du compte
Cliquez sur votre avatar (en haut à droite) → Paramètres du compte.
Allez à Clés API
Dans la barre latérale gauche, cliquez sur Clés API.
Cliquez sur Générer la clé API
Cliquez sur le bouton + Générer la clé API en haut à droite.
Nommer, choisir tous les sites et élargir les permissions
Nommer la clé "AutoSEO". Pour accéder au site, choisissez Tous les sites — ne limitez pas la clé à un seul site. Sous Autorisations, trouvez Toutes les permissions du site et cliquez sur Voir tous pour étendre.
Activer Wix Contacts et Wix Blog
Faites défiler vers le bas et cochez les cases pour Contacts & Membres Wix et Blog Wix.
Générer et vérifier
Cliquez sur Générer la clé. Wix enverra un code de vérification à votre email. Entrez le code et cliquez sur Vérifier & Générer la clé.
Copier le jeton
Cliquez sur COPY Token & Close. Ceci est votre clé API — vous ne pourrez pas la revoir.
Coller & Connecter
Entrez votre ID de site et votre clé API ci-dessus, puis cliquez sur Connecter. Nous vérifierons la connexion et commencerons à publier vos articles automatiquement.
Questions Fréquemment Posées
Site ne se connecte pas ?
Vérifiez votre ID de site depuis l'URL après dashboard/ dans votre tableau de bord Wix.
Problèmes de clé API ?
Faites une clé new après avoir coché les cases — ne réutilisez pas une vieille clé. Choisissez Tous les sites. Confirmer les deux autorisations (Wix Contacts & Membres et Wix Blog) sont activées. Le propriétaire du compte Wix doit créer la clé. Une clé de collaboration échouera.
Échecs de publication ?
Assurez-vous que votre clé API est valide et dispose des autorisations requises. Vérifiez que votre blog existe dans Wix.
Puis-je changer le statut de publication plus tard ?
Oui. Mettez à jour vos paramètres d'intégration dans AutoSEO pour changer entre Publier immédiatement et Mode brouillon.
Que se passe-t-il si je régénère ma clé API ?
Vous devez mettre à jour la nouvelle clé API dans AutoSEO. L'ancienne clé cessera de fonctionner immédiatement.
Besoin de plus d'aide ?
Contactez l'assistance avec l'icône de chat en bas à droite.
Ce que vous obtenez
Publication automatique
Les articles se publient automatiquement sur votre blog Wix
Contenu riche
Mise en forme complète avec titres, images et liens
Images héro
Les images de couverture se synchronisent automatiquement avec vos publications
Comment ajouter l'application Wix Blog
Votre site Wix a besoin de l'application gratuite Wix Blog pour que nous puissions publier des articles. Cela ne prend qu'une minute :
-
1
Ouvrir votre éditeur Wix
Connectez-vous à Wix et ouvrez votre site dans l'Éditeur.
-
2
Cliquez sur "Ajouter des applications" dans la barre latérale gauche
Recherchez l'icône du marché des applications (grille de carrés) sur le côté gauche.
-
3
Recherchez "Blog Wix" et cliquez sur Ajouter
C'est gratuit. Cliquez sur "Ajouter au site" pour l'installer.
-
4
Publier votre site Wix
Cliquez sur "Publier" en haut à droite pour mettre le blog en ligne.
-
5
Revenez ici et reconnectez-vous
Une fois l'application Blog installée, essayez de reconnecter votre site Wix. Cela devrait fonctionner immédiatement.
Utilisez-vous Wix Studio ? Allez dans Ajouter des éléments → Blog, puis faites glisser le widget de blog sur votre page.
Sélectionner votre site Wix
Choisissez quel site Wix vous souhaitez publier vos articles.
Chargement de vos sites Wix...
Échec du chargement des sites.
Aucun site trouvé dans votre compte Wix.
Assurez-vous d'avoir au moins un site avec un blog dans votre compte Wix.
Intégration du blog BigCommerce
Publier des articles directement sur le blog de votre boutique BigCommerce
La partie après store- dans votre URL BigCommerce.
D'un compte API au niveau du magasin avec accès modifier.
Identifiants WebDAV (optionnel - pour les téléchargements d'images)
Obtenez le hash de votre boutique
Ouvrir l'URL de votre boutique BigCommerce. Dans la barre d'adresse, copiez la partie entre store- et .mybigcommerce.com.
Exemple : https://store-mh5fua96uw.mybigcommerce.com/... → Hash du magasin : mh5fua96uw
Ouvrir les comptes API
Dans BigCommerce, allez dans Paramètres (barre latérale gauche) → faites défiler vers le bas jusqu'à la section API → cliquez sur Comptes API au niveau du magasin.
Créer un compte API
Cliquez sur Créer un compte API (en haut à droite). Sélectionnez le type de jeton Jeton API V2/V3. Nommez-le "AutoSEO".
Définir les autorisations de contenu
Sous Contenu, choisissez modifier l'accès. Cela permet à AutoSEO de créer et de mettre à jour des articles de blog.
Enregistrer & Copier le jeton d'accès
Cliquez sur Enregistrer. Copiez immédiatement le Jeton d'accès. BigCommerce ne l'affiche qu'une seule fois.
Obtenez des identifiants WebDAV (optionnel)
Dans BigCommerce, allez dans Paramètres → faites défiler jusqu'à Avancé → cliquez sur Accès aux fichiers (WebDAV). Copiez le Chemin WebDAV, le Nom d'utilisateur et le Mot de passe.
Ces identifiants permettent à AutoSEO de télécharger des images miniatures d'articles dans votre boutique.
Coller & Connecter
Entrez votre Store Hash et votre Access Token ci-dessus, puis cliquez sur Connecter. Nous vérifierons la connexion et commencerons à publier vos articles automatiquement.
Questions Fréquemment Posées
Stockage ne se connecte pas ?
Vérifiez votre hash de magasin depuis l'URL entre store- et .mybigcommerce.com.
Problèmes de jeton d'accès ?
Créer un nouveau compte API dans BigCommerce et confirmer que Content est défini sur modifier.
Images ne se téléchargeant pas ?
Assurez-vous que vos identifiants WebDAV sont corrects. Allez dans Paramètres → Avancé → Accès aux fichiers (WebDAV) pour vérifier.
Que se passe-t-il si je régénère ma clé API ?
Vous devez mettre à jour le nouveau Token d'Accès dans AutoSEO. L'ancien token cessera de fonctionner immédiatement.
Besoin de plus d'aide ?
Contactez l'assistance avec l'icône de chat en bas à droite.
Ce que vous obtenez
Publication automatique
Les articles se publient automatiquement sur votre blog BigCommerce
Contenu HTML riche
Mise en forme complète avec titres, images et liens
Miniatures d'image
Images héro téléchargées via WebDAV en tant que vignettes de publication
Intégration du blog Duda
Publier des articles directement sur le blog de votre site Duda
Visible dans la barre d’adresse lorsque vous modifiez votre site dans l’éditeur Duda.
Trouvez le nom de votre site
Ouvrez l'éditeur Duda pour votre site. L'Site name est dans la barre d'URL — c'est l'identificateur unique de votre site (une longue chaîne alphanumérique).
Exemple : https://my.duda.co/home/site/1501ccca016a4220861ef07fe2c8eb0d
Ouvrir les paramètres d'accès API
Dans votre tableau de bord Duda, allez dans Marque blanche (barre latérale gauche) → Accès API. C'est ici que se trouvent vos identifiants API.
Remarque : Duda ne donne accès à l'API que sur son plan Personnalisé. Les plans Agence et Marque Blanche ne l'incluent pas.
Copier votre nom d'utilisateur et mot de passe API
Votre Nom d'utilisateur API et Mot de passe API sont affichés sur la page d'accès API. Si vous n'avez pas encore défini de mot de passe, vous pouvez le réinitialiser pour en générer un.
Si vous réinitialisez votre mot de passe, les intégrations existantes utilisant l'ancien mot de passe cesseront de fonctionner.
Assurez-vous que votre site a un blog
Ouvrir l'éditeur Duda pour votre site. Si vous ne l'avez pas encore fait, ajoutez la fonctionnalité Blog depuis l'éditeur. Votre site doit avoir un blog activé pour qu'AutoSEO publie des articles.
Coller & Connecter
Entrez le nom de votre site, votre nom d'utilisateur API et votre mot de passe API ci-dessus, puis cliquez sur Connecter. Nous vérifierons la connexion et commencerons à publier vos articles automatiquement.
Questions Fréquemment Posées
Où puis-je trouver l'accès API ?
Connectez-vous à Duda → Marque blanche (barre latérale gauche) → Accès API. Si vous ne voyez pas cette option, vous avez besoin du plan personnalisé de Duda.
Quel plan ai-je besoin ?
Duda ne donne l'accès à l'API que sur son plan Personnalisé. Les plans Agence et Marque Blanche ne l'incluent pas. Demandez à Duda si vous avez besoin d'une mise à niveau.
Site ne se connecte pas ?
Vérifiez le nom du site depuis votre URL Duda. Assurez-vous que la fonctionnalité blog est activée sur votre site.
Que se passe-t-il si je réinitialise mon mot de passe API ?
Vous devez mettre à jour le nouveau mot de passe dans AutoSEO. L'ancien mot de passe cessera de fonctionner immédiatement.
Besoin de plus d'aide ?
Contactez l'assistance avec l'icône de chat en bas à droite.
Ce que vous obtenez
Publication automatique
Les articles se publient automatiquement sur votre blog Duda
Contenu HTML riche
Mise en forme complète avec titres, images et liens
Images héro
Les images de couverture se synchronisent automatiquement avec vos publications
Flux RSS & JSON
Accès programmatique à vos articles publiés pour générateurs de sites statiques et autres intégrations
Flux non activé
Activer les flux RSS et JSON pour intégrer vos articles publiés avec Hugo, Jekyll, Gatsby, Next.js, Eleventy et d'autres générateurs de sites statiques ou lecteurs RSS.
Fonctionnalités
Flux RSS 2.0 & JSON v1
Flux conformes aux normes avec support de contenu complet
Accès Sécurisé par Token
Faire tourner les jetons sans temps d'arrêt, révoquer à tout moment
Articles publiés uniquement
Seulement des articles publiés et non datés dans le futur inclus
Rapide & Mis en cache
Mise en cache de 60 secondes avec support ETag pour l'efficacité
Configurer votre sitemap
Requis pour participer à l'échange de backlinks
Pourquoi avons-nous besoin de votre plan du site ?
Votre sitemap nous aide à vérifier que les backlinks que nous insérons dans vos articles sont publiés sur votre site. Cela vous permet de participer à notre échange de backlinks et de recevoir des liens d'autres sites de notre réseau.
Intégration du blog HubSpot
Publier des articles directement sur le blog de votre CMS HubSpot
Trouvé dans vos paramètres d'application héritée HubSpot. Nous détecterons automatiquement votre blog.
À quel blog devrions-nous publier ?
Ce portail HubSpot a plus d'un blog. Choisissez celui qui correspond à ce site.
Allez aux Applications Héritées
Connectez-vous à app.hubspot.com. Dans la barre de navigation supérieure, cliquez sur Développement, puis cliquez sur Applications héritées dans la barre latérale gauche.
Créer une application privée héritée
Cliquez sur "Créer une application héritée" en haut à droite, puis sélectionnez Privé dans la boîte de dialogue.
Donnez-lui un nom comme AutoSEO Blog Publisher.
Définir les champs requis
Cliquez sur l'onglet "Scopes", puis cliquez sur "Ajouter une nouvelle portée". Ajouter les deux :
content— créer, mettre à jour et publier des billets de blogfiles— téléchargez des images d'article dans votre gestionnaire de fichiers HubSpot
Puis cliquez sur "Mise à jour". Sans la autorisation files, les images restent sur l'hébergement AutoSEO.
Créer l'application et copier le jeton
Cliquez sur "Créer une application" en haut à droite, puis cliquez sur "Continuer la création" pour confirmer. HubSpot affichera votre jeton d'accès. Cliquez sur "Afficher le jeton" et copiez-le.
Le jeton commence par pat-na1- ou similaire. Gardez-le en sécurité — vous ne pourrez pas le revoir.
Collez le jeton ci-dessus & Connectez
Collez votre jeton d'accès dans le champ ci-dessus et cliquez sur Connecter. Nous détecterons automatiquement votre blog et commencerons à publier des articles là-bas.
Questions courantes
Quel plan HubSpot ai-je besoin ?
L'API Blog nécessite Content Hub Professional ou supérieur. Les plans Starter et Free n'incluent pas l'accès à l'API blog.
Dois-je être un super administrateur ?
Oui. Seuls les super administrateurs peuvent créer des applications privées héritées dans HubSpot.
Que faire si j'ai plusieurs blogs ?
Nous vous demanderons de choisir le blog à publier. Vous pouvez également le modifier à tout moment après vous être connecté avec le bouton « Changer de blog ».
Où sont hébergées les images d'articles ?
Nous téléchargeons des images de héros et d'infographie dans votre gestionnaire de fichiers HubSpot (dossier : /autoseo), donc ils chargent depuis HubSpot — pas depuis AutoSEO.
Publication automatique
Les articles sont publiés automatiquement sur votre blog HubSpot
SEO complet
Titres méta, descriptions et images en vedette inclus
Reste synchronisé
Les mises à jour et suppressions de contenu se synchronisent automatiquement
Intégration de Blog GoHighLevel
Publier des articles directement sur votre blog GoHighLevel
Trouvé dans vos paramètres d'intégration privée GoHighLevel.
Votre ID de sous-compte. Trouvé dans Paramètres → Profil d'Entreprise, ou dans l'URL lorsque vous êtes connecté.
Choisissez quel blog publier
Cet emplacement GoHighLevel a plus d'un blog. Choisissez celui qui correspond à ce site.
Ouvrir vos paramètres GoHighLevel
Connectez-vous à app.gohighlevel.com et cliquez sur Paramètres dans la barre latérale en bas à gauche.
Créer une intégration privée
Naviguez vers Paramètres → Intégrations → Intégrations privées. Cliquez sur "Créer une nouvelle intégration".
Donnez-lui un nom comme AutoSEO Blog Publisher.
Définir les autorisations requises
À l'étape Scopes, activez ces autorisations liées au blog :
- blogs/post.write – Créer des articles de blog
- blogs/post-update.write – Mettre à jour les articles de blog
- blogs/list.readonly – Lister les blogs disponibles
- blogs/author.readonly – Obtenir les auteurs de blogs
- medias.write – Ajoutez vos images d'article à GoHighLevel
Copier le jeton
Après avoir créé l'intégration, copiez le jeton généré. Vous ne pourrez plus le voir plus tard.
Collez-le dans le champ "Jeton d'intégration privé" ci-dessus.
Trouvez votre ID de localisation
Allez à Paramètres → Profil d'entreprise. Votre ID de localisation (également appelé ID de sous-compte) est affiché là, ou vous pouvez le trouver dans la barre d'URL lorsque vous êtes connecté à un sous-compte.
Cela ressemble à une longue chaîne alphanumérique, par exemple ve9EPM428h8vShlRW1KT
Cliquez sur Connecter
Collez les deux valeurs ci-dessus et cliquez sur "Connecter". Nous trouverons automatiquement votre blog et commencerons à publier des articles.
Questions courantes
Ai-je besoin d'un plan GoHighLevel spécifique ?
Vous avez besoin d'un plan GoHighLevel qui inclut la fonctionnalité de Créateur de Blog/Site Web. La plupart des plans d'Agence incluent cela.
Où puis-je trouver mon ID de localisation ?
Connectez-vous à votre sous-compte. Allez dans Paramètres → Profil d'entreprise. L'ID d'emplacement est affiché sur cette page. Vous pouvez également le trouver dans la barre d'URL.
Mon jeton est-il stocké en toute sécurité ?
Oui, votre jeton d'intégration privé est crypté avant stockage et n'est jamais affiché en texte clair.
Puis-je supprimer des articles de GoHighLevel ?
Lorsque vous supprimez un article ici, il sera automatiquement archivé sur GoHighLevel. Vous pouvez le supprimer complètement depuis le gestionnaire de blog de GoHighLevel si nécessaire.
Intégration de blog Squarespace
Publier des articles directement sur le blog de votre site Squarespace
Étapes de sécurité importantes avant de se connecter
- Créez un mot de passe unique dans votre compte Squarespace juste pour cette connexion. Ne RÉUTILISEZ PAS un mot de passe d'un autre compte.
- Si Squarespace envoie un code de connexion, collez-le lorsque nous vous le demandons. C'est un contrôle unique pour qu'on se souvienne de cette connexion.
Votre mot de passe est crypté avec AES-256 et n'est jamais stocké en texte clair.
L'adresse que les gens visitent votre site à — par exemple yourbusiness.com. Nous trouverons le reste.
Squarespace ne se connecte toujours pas ?
Vous pouvez continuer à essayer Squarespace, ou utiliser le blog hébergé à la place. Nous hébergeons les articles pour vous afin de publier des œuvres sans une connexion Squarespace.
Changer votre mot de passe Squarespace
Allez à vos paramètres de sécurité de compte Squarespace et changez votre mot de passe pour un nouveau mot de passe unique que vous n'utilisez nulle part ailleurs.
Pourquoi ? Cela protège vos autres comptes. Si vous déconnectez un jour AutoSEO, il vous suffit de changer votre mot de passe Squarespace.
Ayez votre e-mail pratique
Squarespace peut vous envoyer un code de connexion par e-mail lors de la première connexion. Collez ce code ici. Nous mémoriserons ensuite la connexion pour publier vos articles.
Assurez-vous que votre site a un blog
Dans l'éditeur Squarespace, assurez-vous d'avoir une page Blog ajoutée. Si vous n'en avez pas encore, ajoutez-la depuis Pages → + → Blog.
Entrez vos identifiants et connectez-vous
Remplissez le formulaire ci-dessus avec l'adresse de votre site (par exemple yourbusiness.com), votre adresse e-mail Squarespace et votre nouveau mot de passe unique. Cliquez ensuite sur Connecter.
Ne vous inquiétez pas pour obtenir le bon format de domaine — nous allons automatiquement détecter le bon depuis votre compte Squarespace.
Questions Fréquemment Posées
Pourquoi ai-je besoin d'un mot de passe unique ?
Votre mot de passe est crypté et stocké en toute sécurité, mais utiliser un mot de passe unique garantit que vos autres comptes restent en sécurité quoi qu'il arrive. Vous pouvez toujours le changer plus tard.
Pourquoi Squarespace envoie-t-il un code de connexion ?
Squarespace traite une nouvelle connexion comme un nouvel appareil et envoie un code par e-mail. Coller une fois. Nous nous souvenons alors de cette connexion afin que des articles plus tard puissent publier sans autre code.
Mon mot de passe est-il stocké en toute sécurité ?
Oui. Votre mot de passe est crypté avec AES-256 — le même standard de chiffrement utilisé par les banques et les gouvernements. Il n'est jamais stocké en texte simple.
Que dois-je entrer pour l'adresse du site web ?
Entrez l'adresse que vos visiteurs utilisent — comme yourbusiness.com. Nous allons automatiquement détecter le bon site Squarespace à partir de votre compte, de sorte que vous n'avez pas besoin de vous soucier du format exact.
Que se passe-t-il si je change mon mot de passe Squarespace plus tard ?
Vous devrez le mettre à jour ici aussi — revenez sur cette page et entrez votre nouveau mot de passe. Nous vous ferons savoir si votre mot de passe cesse de fonctionner.
Que se passe-t-il si je me déconnecte ?
Vos articles publiés restent sur votre site Squarespace. Nous supprimons immédiatement vos identifiants stockés. Vous pouvez ensuite changer votre mot de passe Squarespace pour revenir à votre mot de passe habituel.
Besoin de plus d'aide ?
Contactez l'assistance avec l'icône de chat en bas à droite.
Ce que vous obtenez
Publication automatique
Les articles se publient automatiquement sur votre blog Squarespace
Contenu HTML riche
Mise en forme complète avec titres, images et liens
Métadonnées SEO
Titres méta, descriptions et images principales inclus
Confirmer le mot de passe unique
Avant de vous connecter, veuillez confirmer que le mot de passe que vous avez saisi est unique à Squarespace et N'EST PAS utilisé pour tout autre compte (email, bancaire, réseaux sociaux, etc.).
Connexion à Squarespace
Squarespace utilise de fortes protections de sécurité, de sorte que la connexion peut prendre quelques tentatives. Nous allons essayer jusqu'à 3 fois — accrochez-vous.
Utilisez le nouveau code. Chaque nouveau e-mail remplace le dernier.
Vous voulez l'option plus facile ?
Blog hébergé publie vos articles sans avoir besoin d'une connexion Squarespace. Vous pouvez toujours fermer ceci et continuer à essayer Squarespace.
Blog hébergé
Nous hébergeons votre blog pour vous. Il suffit de pointer un sous-domaine et vos articles sont en ligne.
Configurez votre sous-domaine blog
Utilisez un sous-domaine de blog dédié comme blog.votresite.com ou articles.votresite.com. Veuillez ne pas entrer votre domaine principal.
DNS vérifié — indique le bon endroit.
Ajouter cet enregistrement CNAME dans vos paramètres DNS :
Proxy Cloudflare détecté
Votre enregistrement CNAME est réglé sur "Proxied" (nuage orange) dans Cloudflare. Cela cache le CNAME et bloque la connexion à votre blog. Voici comment le corriger :
- Connectez-vous à votre tableau de bord Cloudflare
- Allez à DNS > Enregistrements
- Trouvez votre enregistrement CNAME pour
- Cliquez sur l'icône de nuage orange pour la changer en nuage gris (DNS uniquement)
- Enregistrez, attendez une minute, puis cliquez sur "Vérifier DNS" ci-dessus
Cela n'affecte que le sous-domaine du blog — votre site principal reste entièrement protégé par Cloudflare.
Comment ajouter un enregistrement CNAME — étape par étape
Un enregistrement CNAME indique aux navigateurs où trouver votre blog lorsque quelqu'un visite votre domaine personnalisé. Vous l'ajouterez à n'importe quelle entreprise qui gère le DNS de votre domaine — c'est généralement là où vous avez acheté votre domaine (comme GoDaddy, Namecheap, Cloudflare, Google Domains, etc.).
Connectez-vous à votre fournisseur de domaine
Allez sur le site web où vous avez acheté ou gérez votre domaine (GoDaddy, Namecheap, Cloudflare, Squarespace, Wix, etc.) et connectez-vous.
Trouvez les paramètres DNS
Recherchez "DNS", "Gestion DNS", "Enregistrements DNS" ou "DNS avancé". C'est généralement sous les paramètres de domaine ou un bouton "Gérer" à côté de votre nom de domaine.
Ajouter un nouvel enregistrement CNAME
Cliquez sur "Ajouter un enregistrement" ou "Ajouter nouveau", puis sélectionnez CNAME comme type d'enregistrement. Remplissez les champs avec les valeurs indiquées ci-dessus :
- • Nom/hôte :
- • Valeur / Cible / Points vers : blogs.getautoseo.com
- • TTL : Laissez par défaut (souvent "Auto" ou "3600")
Enregistrer et attendre
Appuyez sur Enregistrer. Nous vérifions automatiquement toutes les quelques minutes. Si le disque est public, votre blog se connecte seul. Si nous ne le voyons toujours pas, le dossier n'est pas encore public.
Utilisez-vous Cloudflare ? Assurez-vous que le proxy est désactivé pour cet enregistrement. Lorsque vous ajoutez ou modifiez le CNAME, cliquez sur l'icône de nuage orange pour qu'elle devienne grise (DNS uniquement). Si le proxy est activé, nous ne pouvons pas détecter votre CNAME et votre blog ne se connectera pas.
Vous n'êtes pas sûr qui gère votre DNS ? Vérifiez où vous avez acheté votre domaine — c'est généralement là que votre DNS vit. Si vous utilisez Cloudflare ou un autre service pour gérer votre site, votre DNS pourrait être à la place. En cas de doute, recherchez « [votre fournisseur de domaine] ajouter l'enregistrement CNAME » pour un parcours spécifique.
USING Hostinger ? Ajouter le CNAME dans hPanel → Domaines → DNS / DNS Zone. N'ajoutez pas de nouveau site web ou d'alias de domaine — qui ne connectera pas votre blog.
Une fois que le DNS est vérifié, votre blog est mis en ligne automatiquement — pas d'étapes supplémentaires nécessaires.
Intégration Webhook
Envoyer des articles à n'importe quel point de terminaison automatiquement. Fonctionne avec des plateformes CMS personnalisées, Zapier, Make, n8n, et plus.
Passez à la configuration manuelle — utilisez plutôt notre invite de codage de vibe AI
Nous avons préparé une requête que vous pouvez coller dans Cursor, Claude Code ou tout assistant de programmation IA pour créer votre point de terminaison webhook en quelques secondes.
Doit être une URL publique qui accepte les requêtes POST avec un corps JSON.
Envoyé sous la forme Authorization: Bearer <your-token> avec chaque envoi webhook. Nous avons généré ce jeton pour vous. Ne le modifiez que si vous l’avez aussi changé dans le code de votre point de terminaison ou dans la requête Lovable.
Ce que nous envoyons
POST
Content-Type: application/jsonAuthorization: Bearer aseo_wh_2e5a43307f68fb094354b92455aff530X-AutoSEO-Event: article.published ou article.updatedX-AutoSEO-Signature: <HMAC-SHA256 hash>X-AutoSEO-Delivery: <unique delivery UUID>Exemple de charge utile
{
"event": "article.published",
"id": 42,
"title": "How to Grow Your Business with SEO",
"slug": "how-to-grow-your-business-with-seo",
"published_url": "https://example.com/blog/how-to-grow-your-business-with-seo",
"metaDescription": "Learn practical SEO strategies to attract more customers...",
"content_html": "<h1>How to Grow Your Business...</h1><p>Full HTML content...</p>",
"content_markdown": "# How to Grow Your Business...\n\nFull markdown content...",
"heroImageUrl": "https://cdn.example.com/hero-image.jpg",
"heroImageAlt": "Alt text for the hero image",
"infographicImageUrl": "https://cdn.example.com/infographic.png",
"keywords": ["seo strategies"],
"metaKeywords": "seo, business growth, marketing",
"wordpressTags": "seo, marketing, growth",
"faqSchema": [{"question": "What is SEO?", "answer": "SEO stands for..."}],
"languageCode": "en",
"sourceArticleId": null,
"status": "published",
"publishedAt": "2026-03-04T10:30:00.000Z",
"updatedAt": "2026-03-04T10:30:00.000Z",
"createdAt": "2026-03-04T09:00:00.000Z"
}
Champs de charge utile
| Champ | Tapez | Désignation des marchandises |
|---|---|---|
| event | string | article.published, article.updated, ou test. Utilisez ceci pour décider d'insérer ou de mettre à jour. |
| id | integer | ID de l'article unique — utilisez ceci pour correspondre aux mises à jour des messages existants |
| title | string | Titre de l'article |
| slug | string | Slug compatible avec l'URL |
| published_url | string|null | L'URL en direct du post (définie après la première publication) |
| metaDescription | string | méta description SEO (150-160 caractères) |
| content_html | string | Article complet en HTML |
| content_markdown | string | Article complet en Markdown |
| heroImageUrl | string|null | URL de l'image héro mise en avant |
| heroImageAlt | string|null | Texte alternatif pour l'image principale |
| infographicImageUrl | string|null | URL de l'image infographique (si activé) |
| keywords | array | Mots-clés cibles |
| metaKeywords | string|null | Mots-clés SEO séparés par des virgules |
| wordpressTags | string|null | Tags séparés par des virgules |
| faqSchema | array|null | Données structurées FAQ (paires question/réponse) |
| languageCode | string | Code ISO pour cet article (par exemple EN, ES, de) |
| sourceArticleId | integer|null | Pour les articles traduits, l'identifiant de l'article source original. Null pour les articles en langue primaire. |
| status | string | Toujours published pour les envois par webhook |
| publishedAt | string | Horodatage de publication ISO 8601 |
| updatedAt | string | Horodatage de dernière mise à jour ISO 8601 |
| createdAt | string | Horodatage de création ISO 8601 |
Format de réponse (recommandé)
Retournez une réponse JSON avec l'URL publiée afin que nous puissions lier directement à l'article en direct dans votre tableau de bord. Nous vérifions les champs url, published_url, ou permalink.
// Your endpoint should return:
HTTP 200
Content-Type: application/json
{
"url": "https://yoursite.com/blog/how-to-grow-your-business-with-seo"
}
Si vous ne pouvez pas retourner une URL, renvoyez simplement un HTTP 200. Vous pourrez ajouter l'URL manuellement depuis votre calendrier de contenu.
Vérification des signatures de webhook
Chaque webhook inclut un X-AutoSEO-Signature en-tête — un hachage HMAC-SHA256 du corps JSON utilisant votre jeton d'accès. Vérifiez-le pour confirmer que la demande vient d'AutoSEO.
// Node.js / Express example
const crypto = require('crypto');
const SECRET = 'aseo_wh_2e5a43307f68fb094354b92455aff530';
// IMPORTANT: Use the raw request body string, not JSON.stringify(parsed).
// With Express, add: app.use(express.raw({ type: 'application/json' }))
// or use express.json() with { verify: (req, res, buf) => { req.rawBody = buf; } }
function verifySignature(rawBody, signature) {
const expected = crypto
.createHmac('sha256', SECRET)
.update(rawBody)
.digest('hex');
return crypto.timingSafeEqual(
Buffer.from(signature),
Buffer.from(expected)
);
}
// In your endpoint handler:
const sig = req.headers['x-autoseo-signature'];
if (!verifySignature(req.rawBody, sig)) {
return res.status(401).send('Invalid signature');
}
Configuration rapide avec l'IA
Copiez cette requête dans Cursor, Claude Code ou tout assistant de programmation IA pour générer un point de terminaison webhook prêt à l'emploi pour votre projet.
Create a webhook endpoint in my project that receives article data from AutoSEO (https://getautoseo.com).
CRITICAL: Do NOT drop, delete, alter, or modify any existing database tables, columns, data, or RLS policies. Only CREATE new tables and functions. Never use DROP TABLE, TRUNCATE, or DELETE on existing tables. This project has existing data that must be preserved. Use CREATE TABLE IF NOT EXISTS for any new tables.
## What the endpoint must do:
1. Accept POST requests with a JSON body
2. Verify the Authorization header contains this exact Bearer token: `aseo_wh_2e5a43307f68fb094354b92455aff530` — reject with HTTP 401 if missing or wrong
3. Optionally also verify the HMAC-SHA256 signature (sent in `X-AutoSEO-Signature` header, computed from the raw JSON request body string using the same token as the HMAC secret — use the raw body bytes, not a re-serialized version)
4. Check the `event` field and `id` to decide whether to insert or update:
- `article.published`: Insert a new blog post (store the `id` so you can match updates later)
- `article.updated`: Update the existing post matching this `id` with the new content
- Recommended: use an UPSERT on the `id` field so both events work reliably
5. Return HTTP 200 with a JSON response containing the published URL: `{"url": "https://mysite.com/blog/the-slug"}`
## Incoming request format:
Headers:
- Content-Type: application/json
- Authorization: Bearer aseo_wh_2e5a43307f68fb094354b92455aff530
- X-AutoSEO-Signature: <hmac-sha256-hex-digest>
- X-AutoSEO-Event: article.published or article.updated
- X-AutoSEO-Delivery: <uuid>
JSON body fields:
- event (string): "article.published", "article.updated", or "test"
- id (integer): Unique article ID from AutoSEO — use this to match updates to existing posts
- title (string): Article title
- slug (string): URL-friendly slug
- published_url (string|null): The live URL of the post (set after first publish)
- metaDescription (string): SEO meta description
- content_html (string): Full article as HTML — use this for rendering
- content_markdown (string): Full article as Markdown — use this for storage if your CMS prefers markdown
- heroImageUrl (string|null): Featured hero image URL (fully qualified)
- heroImageAlt (string|null): Alt text for the hero image (use for img alt attribute)
- infographicImageUrl (string|null): Infographic image URL (fully qualified)
- keywords (array): Target keywords, e.g. ["seo strategies"]
- metaKeywords (string|null): Comma-separated SEO keywords
- faqSchema (array|null): FAQ structured data as [{question, answer}] pairs
- languageCode (string): ISO language code for this article, e.g. "en", "es", "de"
- sourceArticleId (integer|null): for translated articles, the ID of the original source article
- status (string): Always "published"
- publishedAt (string): ISO 8601 timestamp
- updatedAt (string): ISO 8601 timestamp
- createdAt (string): ISO 8601 timestamp
## Requirements:
- If event is "test", just return 200 with `{"url": "https://mysite.com/test"}` — don't create a post
- Download the heroImageUrl and infographicImageUrl and store them locally (don't hotlink)
- Store the AutoSEO article `id` so duplicate deliveries update instead of creating duplicates
- The response MUST include `{"url": "https://..."}` with the full public URL of the published post
- Handle errors gracefully — return 500 if something goes wrong so AutoSEO retries the delivery
Questions courantes
Quand les webhooks sont-ils envoyés ?
Chaque fois qu'un article est publié, mis à jour ou que son image principale termine de se générer. Votre point de terminaison reçoit l'article complet, prêt à être publié.
Que doit retourner mon point de terminaison ?
Retournez HTTP 200 pour accuser réception. Si possible, incluez {"url": "https://..."} dans votre réponse JSON afin que nous puissions lier à l'article en direct. Toute réponse non-2xx déclenche jusqu'à 3 tentatives automatiques (1 min, 5 min, 15 min).
Puis-je utiliser cela avec Zapier, Make ou n8n ?
Oui. Créez un déclencheur "Webhook" dans l'un de ces outils, copiez l'URL qu'ils vous donnent et collez-la ici. Vous recevrez toutes les données de l'article dans votre flux d'automatisation.
Mon jeton d'accès est-il stocké en toute sécurité ?
Oui. Nous générons un jeton unique pour votre site et le stockons en toute sécurité. Ce même jeton est intégré à votre requête Lovable et aux requêtes de configuration de l'IA : vous n'avez rien à copier manuellement.
Que se passe-t-il si mon point de terminaison est temporairement hors service ?
Nous réessayons les livraisons échouées jusqu'à 3 fois avec des délais croissants. Si tous les réessais échouent, le webhook est ignoré pour cet article. Votre point de terminaison doit être fiable ou soutenu par une file d'attente.
Puis-je utiliser cela avec des fonctions sans serveur ?
Absolument. Les webhooks fonctionnent avec AWS Lambda, Vercel Functions, Cloudflare Workers, Netlify Functions et toute plateforme pouvant recevoir des requêtes POST.
Intégration de blog Lovable
Ajouter un blog complet à votre site Lovable avec une seule invite. Les articles sont publiés automatiquement.
Comment cela fonctionne
Collez l'invite ci-dessous dans Lovable. Il crée votre blog, un point final de la fonction d'Edge Supabase et un sitemap, avec l'authentification intégrée. Puis collez l'URL de la fonction Edge ci-dessous et appuyez sur Connect. Les articles publient sur votre site instantanément — pas de synchronisation, pas de vote.
Add a blog to my website. Articles are delivered via webhook from AutoSEO (https://getautoseo.com) and stored in Supabase.
CRITICAL: Do NOT drop, delete, alter, or modify any existing database tables, columns, data, or RLS policies. Only CREATE new tables and functions. Never use DROP TABLE, TRUNCATE, or DELETE on existing tables. This project has existing data that must be preserved.
REQUIREMENTS:
1. SUPABASE DATABASE TABLE
- Create a "blog_posts" table ONLY IF IT DOES NOT ALREADY EXIST (use CREATE TABLE IF NOT EXISTS)
- Table columns:
* id (integer, primary key) — the article id from AutoSEO
* title (text, not null)
* slug (text, not null, unique)
* content_html (text) — the full article HTML, ready to render
* content_markdown (text) — the article in Markdown format
* hero_image_url (text) — hero/featured image URL
* hero_image_alt (text) — alt text for hero image (for accessibility and SEO)
* infographic_url (text) — infographic image URL (may be null)
* meta_description (text) — SEO meta description
* meta_keywords (text) — comma-separated SEO keywords
* tags (text) — comma-separated tags
* faq_schema (jsonb) — array of {question, answer} objects for FAQ section
* language (text, default 'en')
* reading_time (integer) — estimated minutes to read
* published_at (timestamptz)
* updated_at (timestamptz)
* created_at (timestamptz)
* received_at (timestamptz, default now()) — when the webhook was received
- Enable Row Level Security (RLS) on the table
- Add an RLS policy allowing anonymous SELECT access — the blog is public
- Add an RLS policy allowing the service_role to INSERT, UPDATE, and DELETE
- Create an index on slug for fast lookups
- Create an index on published_at for sorting
2. WEBHOOK RECEIVER EDGE FUNCTION
- Create a Supabase Edge Function named "receive-article" that:
a. Accepts POST requests with JSON body
b. Verifies the Authorization header: extract the Bearer token and compare it to this exact value: "aseo_wh_2e5a43307f68fb094354b92455aff530". If the token doesn't match or is missing, return HTTP 401 with { "error": "Unauthorized" }
c. Reads the JSON body with these fields:
- event (string): "article.published" or "test"
- id (integer): unique article ID
- title (string): article title
- slug (string): URL-friendly slug
- metaDescription (string): SEO meta description
- content_html (string): full article as HTML
- content_markdown (string): full article as Markdown
- heroImageUrl (string|null): featured hero image URL
- heroImageAlt (string|null): alt text for the hero image (use for img alt attribute)
- infographicImageUrl (string|null): infographic image URL
- keywords (array): target keywords
- metaKeywords (string|null): comma-separated SEO keywords
- wordpressTags (string|null): comma-separated tags
- faqSchema (array|null): array of {question, answer} objects
- languageCode (string): ISO language code for this article (e.g. "en", "de")
- sourceArticleId (integer|null): for translated articles, the ID of the original source article
- status (string): "published"
- publishedAt (string): ISO 8601 timestamp
- updatedAt (string): ISO 8601 timestamp
- createdAt (string): ISO 8601 timestamp
d. If event is "test": return HTTP 200 with { "url": "https://YOUR_DOMAIN/blog/test", "status": "ok" }
e. Calculate reading_time: strip HTML tags from content_html, count words, divide by 200, round up
f. UPSERT the article into blog_posts (on conflict on id, update all fields + set received_at = now())
g. Return HTTP 200 with JSON: { "url": "https://YOUR_DOMAIN/blog/SLUG" }
IMPORTANT: Replace YOUR_DOMAIN with your actual deployed site domain. AutoSEO reads the "url" field from the response to track where the article was published. This enables the "View Live" link in your AutoSEO dashboard.
h. On error, return HTTP 500 with { "error": "message" } — AutoSEO will retry up to 3 times
- The function must use the Supabase service_role key to bypass RLS for writes
- Set CORS headers to allow POST from any origin (AutoSEO's server sends webhooks)
3. BLOG LISTING PAGE at /blog
- Query blog_posts from Supabase, ordered by published_at DESC
- Display each article as a card: hero image (with fallback — hide container if no image or image fails to load), title, meta_description (truncated to ~160 chars), published date (formatted as "Month Day, Year"), reading time
- Link each card to /blog/[slug]
- Paginate: show 12 articles initially with a "Load More" button (use Supabase range queries)
- LOADING STATE: show skeleton card placeholders (3-6 cards) with pulsing animation
- EMPTY STATE: show "Articles are on the way! Check back soon." with a friendly illustration
- ERROR STATE: if Supabase query fails, show "Couldn't load articles. Please try again." with a Retry button
4. INDIVIDUAL BLOG POST PAGE at /blog/[slug]
- Query blog_posts WHERE slug = [slug], single row
- ARTICLE NOT FOUND: styled 404 with link back to /blog
- Hero image: responsive container (max-height: 400px, object-fit: cover, full width). Use hero_image_alt as the img alt attribute. On load error, hide the image container — no broken image icons
- Infographic: if infographic_url is set, display below the article content as a full-width image with a subtle border and rounded corners. On load error, hide it
- Title: render as h1
- Meta info row: formatted published date, reading time (e.g. "5 min read")
- Content: render content_html using dangerouslySetInnerHTML inside a "prose" styled container with these typography rules:
* h2: 1.5rem, bold, margin-top 1.75rem
* h3: 1.25rem, bold, margin-top 1.5rem
* p: 1.1rem line-height, margin-bottom 1rem, color slightly muted (gray-800)
* ul/ol: proper indentation, visible bullets/numbers, margin-bottom 1rem, li margin-bottom 0.5rem
* blockquote: left border (4px, primary color), italic, padding-left 1rem, muted text
* code (inline): background gray-100, padding 2px 6px, rounded, monospace font
* pre > code: background gray-900, text gray-100, padding 1rem, rounded-lg, overflow-x auto
* table: full width, bordered cells, alternating row backgrounds, horizontal scroll wrapper on mobile
* img inside content: max-width 100%, height auto, rounded-lg, centered. Add onerror handler to hide broken images
* a: colored link (primary color or blue-600), underline on hover; preserve each link's target and rel attributes from content_html (do not override them)
- FAQ SECTION: if faq_schema exists and is not empty, render below the article content:
* Heading: "Frequently Asked Questions"
* Each Q&A as a collapsible accordion (question = clickable header, answer = expandable body)
* First item expanded by default, rest collapsed
* Smooth expand/collapse animation
* Inject FAQPage JSON-LD structured data (schema.org)
- RELATED ARTICLES: below FAQ (or below content if no FAQs), show up to 3 other recent articles excluding the current one. Display as small horizontal cards (image, title, date)
- "← Back to all articles" link at the top
5. SEO & META TAGS
- Blog listing: title "Blog | [Site Name]", meta description "Read our latest articles and insights"
- Article page: title "[Article Title] | [Site Name]"
- Per-article meta tags (react-helmet-async or equivalent):
* meta description from meta_description column (fall back to first 160 chars of content)
* meta keywords from meta_keywords column
* og:title, og:description, og:image (hero_image_url), og:type="article"
* og:url = https://[your-domain]/blog/[slug]
* twitter:card="summary_large_image", twitter:title, twitter:description, twitter:image
* canonical link: https://[your-domain]/blog/[slug]
- Article JSON-LD (schema.org Article): headline, image, datePublished, dateModified, description, publisher
- FAQPage JSON-LD if faq_schema exists
6. SITEMAP at /sitemap.xml
- Create a Supabase Edge Function that reads from blog_posts and returns valid XML sitemap
- Configure a rewrite so /sitemap.xml hits this Edge Function
- List every blog post as https://[your-domain]/blog/[slug]
- Include lastmod from updated_at, changefreq "weekly", priority "0.7"
- Include /blog listing with priority "0.8"
- Include homepage with priority "1.0"
7. SPA ROUTING & DEPLOYMENT
- Ensure /blog and /blog/[slug] routes work with direct navigation
- Add redirect/rewrite config: public/_redirects for Netlify or vercel.json for Vercel
8. NAVIGATION
- Add a "Blog" link to the main navigation linking to /blog
- Highlight the Blog nav item when on /blog/*
9. DESIGN & RESPONSIVENESS
- Clean, modern layout matching my existing site style
- Blog listing: responsive grid — 1 col mobile, 2 tablet, 3 desktop
- Article cards: subtle hover effect (lift + shadow), smooth transitions, rounded image corners
- Article page: max-width 720px centered for comfortable reading
- Fully responsive, mobile-first
- All images responsive with max-width: 100%
- All interactive elements have cursor: pointer
Étapes de configuration
Cliquez sur Copier l'invite ci-dessus et collez-la dans Lovable
Lovable construit vos pages de blog, table Supabase, point de terminaison webhook et sitemap
Copiez l'URL de la fonction Edge depuis Supabase (cela ressemble à https://xxx.supabase.co/functions/v1/receive-article)
Collez l'URL ci-dessous, appuyez sur Envoyer le test pour vérifier, puis Connectez
L'URL de la Fonction Edge Supabase que Lovable a créée pour vous.
Déjà intégré dans l'invite Lovable ci-dessus — pas besoin de changer cela.
Suivi des URL publiées : La Fonction Edge renvoie l'URL en direct pour chaque article. AutoSEO utilise cela pour afficher des liens "Voir en Direct" dans votre tableau de bord et permettre l'échange de backlinks. L'invite crée également /sitemap.xml pour la découverte par les moteurs de recherche.
Activez d'abord votre flux
Le prompt Lovable a besoin de l'URL de votre flux JSON. Activez votre flux pour commencer.
Ce que vous obtenez
Blog généré par IA
Lovable construit vos pages de blog, routage et design à partir d'une seule invite
Plan de site automatique
Dynamique /sitemap.xml pour que les moteurs de recherche trouvent chaque article
Backlink Prêt
Les URL Standard /blog/slug nous permettent de vérifier les publications et d'activer l'échange de backlinks