Aller au contenu principal

Foire aux questions

remarque

Disponible depuis la v2.0.0


URLs de flux et accès

Q : Facebook me demande une URL, où puis-je la trouver ? R : Le module génère jusqu'à trois fichiers de flux par boutique : le flux principal, un flux par langues et un flux par pays. Chaque URL de flux s'affiche directement sous les options de génération correspondantes dans l'onglet Génération du flux de la configuration du module. Cliquez sur n'importe quelle URL pour la copier dans le presse-papiers, puis collez-la dans Facebook Ads Manager > Catalogues > Sources de données.

Voir : Génération du flux par boutique — Langues, devises et pays


Q : Lorsque j'essaie d'ouvrir l'URL du flux dans un navigateur, j'obtiens une erreur 404 R : Le fichier de flux n'existe pas encore. Après avoir configuré le module, vous devez déclencher au moins une exécution de génération — le module ne crée pas le fichier à la sauvegarde. Rendez-vous dans l'onglet Génération manuelle, cliquez sur Générer maintenant, attendez la fin de la génération, et l'URL du flux fonctionnera.

Voir : Génération manuelle du flux


Q : J'ai ouvert l'URL du flux dans mon navigateur et l'onglet a planté ou affiche une erreur « mémoire insuffisante » — mon flux est-il cassé ? R : Non. Lorsque votre catalogue est volumineux (plusieurs centaines de mégaoctets de XML), la plupart des navigateurs manquent de mémoire en tentant d'afficher le XML brut dans l'onglet. Il s'agit d'une limitation du navigateur, pas d'un problème de flux. Votre flux est presque certainement correct et le robot de Facebook n'a aucun mal à le télécharger — il n'essaie pas de l'afficher comme une page web.

Une vraie erreur de flux ou d'XML se présente de façon tout à fait différente : le module affiche un encadré rouge en haut de la page de configuration du module, indiquant le message d'erreur, le numéro de ligne et la position dans le fichier où le problème s'est produit. Si vous voyez cet encadré rouge, investiguez. Si tout ce que vous constatez est un crash du navigateur ou un onglet vide, votre flux est correct — utilisez les statistiques du tableau de bord pour confirmer qu'il a été généré avec le nombre de produits attendu.

Voir : Tableau de bord et vue rapide


Q : Puis-je forcer Facebook à mettre à jour le catalogue immédiatement ? R : Oui. Dans Facebook Ads Manager, allez dans Catalogues, sélectionnez votre catalogue, ouvrez Sources de données produits, choisissez votre source de données, cliquez sur l'onglet Configuration, faites défiler vers le bas et cliquez sur Récupérer maintenant. Facebook téléchargera à nouveau votre flux en quelques secondes.


Q : J'ai configuré la tâche cron, mais elle ne s'exécute pas R : Si votre serveur ne prend pas en charge la commande curl standard dans cron, essayez plutôt l'alternative wget :

wget -O - -q -t 1 "YOUR_GENERATION_URL" >/dev/null 2>&1

Vous pouvez également passer à la méthode PHP CLI, qui s'exécute entièrement en dehors des contraintes du serveur web et constitue l'option la plus fiable pour les grands catalogues. Les trois variantes de commandes — cURL, wget et PHP CLI — sont affichées dans l'onglet Génération automatique (Tâches cron) du module, pré-remplies avec votre clé secrète.

Voir : Génération automatique — Tâches cron


Produits manquants ou ignorés

Q : Mon flux a été généré, mais certains produits sont absents R : Ouvrez les onglets Ignorés et Erreurs dans la configuration du module — ils apparaissent après chaque génération et listent chaque produit exclu avec la raison correspondante. Les raisons courantes incluent : pas de stock (et « Générer les produits en rupture de stock » est désactivé), produit exclu par identifiant dans l'onglet Exclusions de produits, catégorie principale du produit exclue dans l'onglet Exclusion de catégories, image manquante, description vide, visibilité masquée ou identifiant produit absent. Examinez les raisons listées pour déterminer si chaque omission est intentionnelle ou révèle un problème de données à corriger.

Voir : Produits ignorés, erreurs et diagnostics système


Q : Un produit est exclu parce qu'il n'est pas en stock. Dois-je le conserver dans le flux ? R : Facebook recommande de conserver les produits en rupture de stock dans votre catalogue — cela permet à leur algorithme de continuer à optimiser la diffusion pour ces articles lorsque le stock revient. Pour inclure les produits en rupture de stock, allez dans Options produits et réglez Générer les produits en rupture de stock sur Oui (valeur par défaut). Le produit apparaîtra dans le flux marqué comme out of stock. Si votre boutique est configurée pour autoriser les commandes sur les articles en rupture de stock, le module marque automatiquement le produit comme in stock.

Voir : Tarification, taxes et stock


Q : Facebook rejette des produits ou les signale pour des descriptions ou une marque manquantes R : Le module dispose d'options de correction automatique conçues précisément pour cela. Dans l'onglet Options produits, faites défiler jusqu'à la section Contournement des erreurs :

  • Activez Générer les descriptions manquantes pour construire automatiquement une description à partir du nom du produit, de la catégorie et de la méta-description pour tout produit dont le champ description est vide.
  • Activez Autoriser les produits sans EAN, UPC ou fabricant et renseignez Attribuer un fabricant en masse avec le nom de votre boutique ou marque pour éviter que les produits sans code-barres soient rejetés.
  • Activez Supprimer le HTML non valide des descriptions si vous utilisez un constructeur de pages qui injecte des balises shortcode comme [vc_row][/vc_row] — Facebook rejette les descriptions contenant de telles balises.

Même avec ces options activées, vérifiez les panneaux Erreurs et Ignorés après la prochaine génération pour confirmer que les produits précédemment rejetés sont maintenant inclus.

Voir : Contournement des erreurs et auto-remplissage des données manquantes


Problèmes d'images

Q : J'ai trop d'erreurs d'images, même si les produits ont des images R : Cela signifie généralement que votre boutique stocke les images au format WebP ou AVIF tandis que la vérification d'existence du module recherche un fichier .jpg qui n'est pas présent. Allez dans Options d'images et activez Désactiver la vérification de l'existence de l'image pour ignorer la vérification du système de fichiers et inclure les URLs d'images quel que soit le format. Vérifiez ensuite dans Facebook Commerce Manager que les images se chargent correctement pour quelques produits.

Voir : Options d'images


Q : Facebook affiche la mauvaise image — pas celle que je souhaite utiliser comme photo principale du produit R : Deux réglages contrôlent quelle image devient le image_link principal dans le flux. Si vous souhaitez utiliser une position spécifique plutôt que l'indicateur de couverture de PrestaShop, allez dans Options d'images et définissez Position de départ de l'image sur le numéro de position souhaité (par exemple 2 pour utiliser la deuxième image). Si vous souhaitez simplement ignorer la désignation de couverture et utiliser la première image par ordre de position, activez Ignorer la couverture ?. Pour les produits avec des images spécifiques aux déclinaisons, le module utilise en priorité les images propres à la déclinaison.

Voir : Options d'images


Filtrage par catégorie

Q : Je souhaite exclure certaines catégories du flux — comment faire ? R : Rendez-vous dans l'onglet Catégories incluses / exclues, assurez-vous que la Méthode de restriction des catégories est définie sur Exclure (par défaut), et cochez les catégories que vous souhaitez retirer. En mode Exclusion, le module vérifie uniquement la catégorie principale (par défaut) de chaque produit. Si la catégorie principale est cochée, le produit est exclu. Un produit dont la catégorie secondaire est cochée mais dont la catégorie principale ne l'est pas apparaîtra quand même dans le flux.

Voir : Inclusion / exclusion de catégories


Q : Je ne veux qu'un sous-ensemble spécifique de catégories dans le flux — pas la majorité du catalogue R : Passez la Méthode de restriction des catégories sur Inclure. Ne cochez que les catégories que vous souhaitez promouvoir. En mode Inclusion, le module vérifie toutes les catégories d'un produit — y compris les secondaires. Si l'une des catégories du produit est cochée, le produit est inclus. Cela signifie que vous pouvez intégrer des produits même lorsqu'ils se trouvent principalement dans une catégorie non cochée, tant qu'ils sont également assignés à une catégorie cochée.

Soyez prudent lorsque vous changez de mode. Si vous aviez des catégories cochées pour l'Exclusion et que vous passez en mode Inclusion, ces mêmes catégories cochées deviennent les seules présentes dans le flux — toutes les autres catégories sont abandonnées. Vérifiez toujours vos cases à cocher après avoir changé la méthode.

Voir : Inclusion / exclusion de catégories


Multistore, langues et pays

Q : J'ai plusieurs boutiques — chaque boutique obtient-elle son propre flux ? R : Oui. Lorsque la fonctionnalité multistore de PrestaShop est active, l'onglet Génération du flux affiche un bloc de configuration distinct pour chaque boutique. Vous pouvez activer ou désactiver la génération du flux par boutique de façon indépendante. Chaque boutique dispose de son propre ensemble d'URLs de flux (principal, langues, pays). La plupart des paramètres de configuration des produits (options d'images, tarification, libellés, etc.) sont globaux et s'appliquent à toutes les boutiques simultanément — vous n'avez pas besoin de les répéter pour chaque boutique.

Voir : Génération du flux par boutique — Langues, devises et pays


Q : Ma boutique vend en plusieurs langues — comment obtenir un flux par langue ? R : Dans l'onglet Génération du flux pour la boutique concernée, faites défiler jusqu'à la section Langues supplémentaires et activez chaque langue que vous souhaitez exporter. Le module génère un fichier de flux Langues distinct contenant toutes les langues activées dans un seul fichier XML. Utilisez l'URL du flux par langue affichée dans cette section lors de l'enregistrement du catalogue dans Facebook. N'activez que les langues pour lesquelles vos produits disposent de traductions réelles — si une langue manque de traductions, le flux utilise par défaut le contenu de la langue principale.

Voir : Génération du flux par boutique — Langues, devises et pays


Q : Je vends dans plusieurs pays avec des devises différentes — comment configurer des flux spécifiques par pays ? R : Dans l'onglet Génération du flux, faites défiler jusqu'à Devise / Remplacement des prix par pays et activez chaque pays dont vous avez besoin. Pour chaque pays, sélectionnez la devise correcte et la langue associée pour les URLs des produits. Le module génère un flux Pays avec une section distincte par pays activé. Deux scénarios sont couverts : (a) un pays qui utilise une devise réellement différente (par exemple, vendre en euros pour la France mais en livres pour le Royaume-Uni) ; et (b) un pays qui utilise la même devise mais peut avoir des prix différents en raison des règles de prix de PrestaShop. Utilisez l'URL du flux par pays lors de l'enregistrement de ce catalogue dans Facebook.

Voir : Génération du flux par boutique — Langues, devises et pays


Prix et remises

Q : Dois-je activer les prix avec ou sans taxes ? R : Cela dépend du pays et de la façon dont votre boutique affiche les prix. Sur les marchés européens (France, Allemagne, Espagne, Italie et autres), les prix affichés aux consommateurs doivent inclure la TVA — activez Afficher les prix avec taxe ? (par défaut, Oui) afin que le flux corresponde à ce que les clients voient sur vos pages produits. Aux États-Unis et sur d'autres marchés où les prix sont affichés hors taxes, désactivez cette option pour que le flux affiche les prix nets. Si Facebook signale des produits avec un avertissement « incohérence de prix », c'est le premier paramètre à vérifier.

Voir : Tarification, taxes et stock


Q : J'ai mis à jour une remise dans PrestaShop mais le flux affiche toujours l'ancien prix R : Le flux est un instantané généré à un moment précis — il ne se met pas à jour en temps réel. Vous devez régénérer le flux pour que la nouvelle remise apparaisse. C'est l'une des principales raisons pour lesquelles une tâche cron est importante : le système de remises de PrestaShop utilise des règles de prix en couches où une règle peut se terminer et une autre commencer à minuit. Si votre flux n'est généré qu'une fois tous les quelques jours, il peut afficher des prix obsolètes qui ne reflètent plus la remise actuelle. Pour des données de remise précises, régénérez au moins une fois toutes les 24 heures, ou plus souvent si vous organisez des promotions à durée limitée.

Voir : Génération automatique — Tâches cron


Cron et fréquence de génération

Q : Pourquoi ai-je besoin d'une tâche cron ? Ne puis-je pas simplement générer le flux une seule fois ? R : Vous pouvez générer manuellement, mais vos prix, niveaux de stock et règles de remise évoluent dans le temps. Facebook re-télécharge votre flux selon son propre calendrier et s'attend à ce que les données soient raisonnablement à jour. Si les prix dans votre flux diffèrent de ceux de votre site web, l'examen du catalogue par Facebook peut signaler ou désapprouver vos produits. Une tâche cron maintient la génération automatique afin que vous n'ayez jamais à y penser.

Voir : Génération automatique — Tâches cron


Q : À quelle fréquence dois-je régénérer le flux ? R : Pour les catalogues petits et moyens où la génération prend quelques minutes ou moins, programmez la tâche cron pour s'exécuter 4 à 6 fois par jour, réparties dans la journée. Pour les très grands catalogues où la génération prend beaucoup plus de temps, planifiez-la une fois par jour pendant les heures de faible trafic — généralement autour de minuit (00h00–01h00). Au minimum, régénérez au moins une fois toutes les 24 heures afin que les règles de remise en couches de PrestaShop reflètent toujours le niveau de remise actif en cours.

Voir : Génération automatique — Tâches cron


Erreurs serveur, délais d'expiration et grands catalogues

Q : La génération du flux expire ou s'arrête avant de se terminer R : Activez la génération par cycles. Dans l'onglet Options produits, définissez Éléments par cycle sur un nombre inférieur à votre nombre total de produits (par exemple 500 ou 1000). Le module traitera ce nombre de produits par requête, sauvegardera la progression et continuera automatiquement avec le lot suivant — même entre des appels cron séparés. Il s'agit de l'approche recommandée pour tout catalogue qui ne peut pas se terminer en une seule requête serveur.

Si la génération s'arrête dès le début et ne produit rien, vérifiez également Options de génération > Utiliser le délai d'expiration cURL. Si votre serveur ne prend pas en charge le mode curl en arrière-plan, désactivez cette option pour que la génération s'exécute de façon synchrone.

Voir : Génération par cycles pour les grands catalogues


Q : La génération du flux provoque une erreur de mémoire R : Commencez par réduire le nombre d'Éléments par cycle dans Options produits afin de charger moins de produits en mémoire à la fois. Examinez également le paramètre Traitement par lots du fichier dans Options de génération — réglez-le sur environ un quart de la taille de votre cycle (par exemple cycle 1000 → lot 250). Cela divise chaque cycle en opérations PHP plus petites qui consomment moins de mémoire en pic. Si les erreurs de mémoire persistent, contactez votre hébergeur pour lui demander d'augmenter la limite mémoire PHP, ou passez à la méthode cron PHP CLI qui s'exécute en dehors des contraintes de mémoire du serveur web.

Voir : Génération par cycles pour les grands catalogues et Génération automatique — Tâches cron


Q : J'ai un très grand catalogue avec des centaines de milliers de produits — quelle est la configuration recommandée ? R : Utilisez le mode cycle avec une taille de cycle prudente (500 à 2000 produits par cycle, selon la richesse en données de chaque produit). Configurez la tâche cron avec la méthode PHP CLI — elle n'a pas de délai d'expiration HTTP et pas de limite de temps d'exécution du serveur web. Planifiez la génération pendant les heures de faible trafic. Le module a traité des catalogues de centaines de milliers de produits avec cette configuration. Surveillez le tableau de bord après la première exécution complète pour voir le temps de génération total et ajustez la taille du cycle en conséquence.

Voir : Génération par cycles pour les grands catalogues et Génération automatique — Tâches cron


Format de sortie

Q : Quelle est la différence entre le format RSS et Atom ? R : Ce sont deux dialectes XML acceptés par les plateformes de catalogues produits. RSS est le format plus ancien, le plus largement supporté. Atom est plus récent, plus flexible, et constitue le format par défaut du module — il est privilégié par Google et fonctionne avec Facebook et Instagram. Si vous soumettez votre flux à Pinterest, RSS peut être requis ou préféré par cette plateforme. Pour toutes les autres plateformes (Facebook, Instagram, Google), conservez le paramètre Atom par défaut, sauf si la documentation de la plateforme exige explicitement RSS.

Voir : Options de génération — Format de sortie et cURL


Catégories Google

Q : Pourquoi devrais-je associer des catégories Google à mes produits ? R : La taxonomie produits de Google est un système de classification standardisé que Facebook, Instagram, Pinterest et Google Shopping comprennent tous. Lorsque vous associez une catégorie Google à vos catégories PrestaShop, le flux inclut un champ <g:google_product_category> pour chaque produit. Cela aide ces plateformes à classer correctement vos produits, à les diffuser auprès des bonnes audiences, à appliquer les bons formats publicitaires et à comprendre quels champs sont requis pour votre type de produit. Ce n'est pas obligatoire, mais cela améliore la qualité du catalogue et peut réduire les taux de rejet.

Voir : Association des catégories produits Google


Q : Comment configurer les catégories Google dans le module ? R : Il y a deux étapes. Premièrement, téléchargez la taxonomie Google : allez dans l'onglet Téléchargement des catégories Google et cliquez pour télécharger le dernier fichier de taxonomie. Cela donne au module une copie locale afin qu'il puisse fonctionner sans dépendre de la disponibilité de Google au moment de la génération. Deuxièmement, allez dans l'onglet Association des catégories Google, trouvez chacune des catégories de votre boutique dans l'arborescence et choisissez la catégorie Google correspondante la plus précise. Votre flux produits inclura alors la google_product_category correcte pour chaque produit.

Voir : Téléchargement de la taxonomie Google et Association des catégories produits Google


Protection du flux

Q : Puis-je protéger mon flux par mot de passe pour que mes concurrents ne puissent pas voir mes prix ? R : Oui. Rendez-vous dans l'onglet Protection du flux, définissez Protéger l'URL des flux ? sur Oui, et saisissez un nom d'utilisateur et un mot de passe. Le module écrit un fichier .htaccess et .htpasswd dans le dossier des flux — Apache et LiteSpeed appliqueront l'authentification HTTP Basic sur toutes les requêtes vers les fichiers XML de flux. Le mot de passe est stocké sous forme de hachage bcrypt, jamais en clair. Notez que ce mécanisme ne fonctionne que sur les serveurs Apache et LiteSpeed ; il n'a aucun effet sur Nginx.

Voir : Protection du flux — Authentification HTTP Basic


Q : Si j'ajoute un mot de passe, Facebook pourra-t-il toujours télécharger mon flux ? R : Oui. Le Gestionnaire de catalogues de Facebook prend entièrement en charge l'authentification HTTP Basic. Lorsque vous enregistrez ou mettez à jour l'URL du flux dans le Gestionnaire de catalogues, intégrez les identifiants directement dans l'URL au format https://username:password@votreboutique.com/modules/facebookproductsfeed/feeds/feed_1_en.xml. Le robot de Facebook transmet ces identifiants à chaque récupération planifiée. L'onglet Tâches cron du module ajoute également automatiquement les identifiants en préfixe de la commande cURL affichée lorsque la protection est activée.

Voir : Protection du flux — Authentification HTTP Basic


Autres questions fréquentes

Q : Facebook ne trouve pas de données dans mon flux R : Commencez par ouvrir l'URL du flux dans votre navigateur. Si la page se charge et affiche des données XML de produits, le problème vient du côté de Facebook — un délai de planification, une source de données obsolète, ou le flux vient d'être enregistré et Facebook ne l'a pas encore récupéré. Si la page se charge mais est vide ou ne renvoie que très peu de produits, vérifiez les panneaux Ignorés et Erreurs dans le module. Si vous recevez une erreur serveur ou que la page expire, votre hébergeur a peut-être une protection contre le hotlinking ou des règles de pare-feu bloquant les requêtes externes vers votre URL de flux — contactez votre hébergeur et demandez-lui d'autoriser les requêtes GET externes vers vos URLs de flux.

Voir : Produits ignorés, erreurs et diagnostics système


Q : Je vois des notices ou avertissements PHP dans le panneau Diagnostics système — cela signifie-t-il que mon flux est cassé ? R : Pas nécessairement. Les notices et avertissements PHP sont des messages informatifs qui peuvent apparaître pendant la génération sans bloquer un flux correct. Une notice ne signifie pas qu'un produit a été ignoré ni que le fichier est invalide. Examinez le message pour voir s'il pointe vers un vrai problème de données. Seules les erreurs qualifiées de fatales, ou les erreurs accompagnées d'un nombre de produits très faible, indiquent que la génération a réellement été interrompue. Le panneau Diagnostics système affiche l'identifiant du produit ainsi que le fichier et le numéro de ligne pour vous permettre d'analyser le produit concerné si nécessaire.

Voir : Produits ignorés, erreurs et diagnostics système


Fonctionnalités associées