Commencer
Comment utiliser WP-CLI pour gérer les flux de produits - AdTribes
  1. Accueil
  2. Base de connaissances
  3. Conseils généraux sur les flux
  4. Comment utiliser WP-CLI pour gérer les flux de produits

Comment utiliser WP-CLI pour gérer les flux de produits

Si vous gérez des dizaines de flux, exécutez un site headless ou de staging, ou avez besoin que les actualisations de flux se déclenchent à partir d'une tâche cron au niveau du serveur au lieu d'une visite de page, cliquer sur l'écran d'administration pour chaque flux devient rapidement lent. Product Feed Pro inclut un ensemble complet de commandes WP-CLI afin que vous puissiez lister, créer, mettre à jour et actualiser les flux directement depuis le terminal. Cela signifie que vous pouvez automatiser la gestion des flux, l'intégrer dans un pipeline de déploiement, ou déclencher une actualisation à partir d'une tâche cron système sans toucher au tableau de bord WordPress.

Prérequis

ExigenceDétails
Version de Product Feed Pro13.5.4 ou ultérieure
WP-CLIInstallé et fonctionnel sur votre serveur. Les commandes de Product Feed Pro s'enregistrent avec votre installation WP-CLI existante. Elles ne l'installent pas pour vous.
Statut du pluginProduct Feed Pro actif sur le site. Aucune licence Elite ou plan payant n'est requis ; ces commandes font partie du niveau gratuit/Pro.
AccèsAccès Shell ou SSH au serveur, ou un panneau d'hébergement qui fournit un terminal WP-CLI

WP-CLI s'exécute avec les pleins pouvoirs, donc ces commandes ignorent les vérifications de permissions et de nonce que l'interface d'administration utilise. Toute personne ayant un accès shell pour exécuter des commandes wp peut gérer tous les flux du site, alors traitez l'accès au serveur de la même manière que vous traiteriez un compte administrateur.

Référence des commandes

Chaque commande se trouve sous l'espace de noms adt-feed. Exécutez wp adt-feed <command> pour la gestion des flux, wp adt-feed channel list pour voir les canaux disponibles, et wp adt-feed format list pour voir les formats de fichiers pris en charge.

Lister les flux

Affiche les flux déjà présents sur votre site. Utilisez-la pour vérifier le statut, trouver l'ID d'un flux, ou exporter la liste complète.

IndicateurDéfautRemarques
--status=<statut>toutpublish, draft, ou any
--channel=<canal>aucunFiltrer par nom ou hachage de canal, insensible à la casse
--per-page=<n>100Nombre maximum de flux à retourner
--page=<n>1Numéro de page pour la pagination
--format=<format>tableautable, csv, json, yaml, ids, ou count
--fields=<champs>id,titre,post_status,status,channel,file_format,products_count,last_updatedListe des colonnes à afficher, séparées par des virgules
wp adt-feed list
wp adt-feed list --status=publish --format=json
wp adt-feed list --channel="Google Shopping"
wp adt-feed list --format=ids

Le dernier exemple affiche uniquement les ID numériques des flux, ce qui est pratique lorsque vous souhaitez les transmettre à une autre commande, comme l'actualisation de tous les flux publiés en une seule ligne.

Obtenir les détails d'un flux

Affiche la configuration complète d'un flux, y compris ses mappages d'attributs, ses filtres et ses règles.

wp adt-feed get 4945
wp adt-feed get 4945 --format=yaml

Remplacez 4945 par l'ID numérique du flux, ou par son hash de projet hérité si vous ne connaissez pas l'ID. --format accepte json (par défaut), yaml ou table. En format table, les données imbriquées comme les mappages et les règles sont aplaties en une chaîne JSON dans chaque ligne afin de rester lisibles dans un terminal.

Créer un flux

Crée un nouveau flux. Au minimum, vous avez besoin d'un titre, d'un canal, d'un pays et d'un format de fichier.

Un flux créé avec des indicateurs seuls n'a pas de mappage d'attributs. L'interface d'administration remplit les attributs requis du canal lorsque vous créez un flux là-bas. Le CLI ne le fait pas. Un flux créé à partir d'indicateurs signale toujours ready après sa génération, et son nombre de produits est non nul, mais le fichier qu'il écrit ne contient aucun produit. Rien ne vous avertit. Vérifié sur Product Feed Pro 13.5.7 : un flux créé uniquement avec des indicateurs s'est terminé avec le statut ready et un nombre de produits de 18, tandis que le XML généré ne contenait que l'en-tête du canal et zéro nœud d'élément.

Pour créer un flux utilisable, passez la configuration complète dans --from-file. Le moyen le plus rapide de construire ce JSON est de configurer un flux dans l'interface d'administration, d'exécuter wp adt-feed get <id> --format=json, puis de modifier le résultat. Notez que les définitions de canal stockent un suffixe {{CURRENCY}} sur les attributs de prix, et seul l'écran de mappage de champs de l'administrateur remplace ce placeholder par la devise de votre boutique. Si vous écrivez le JSON à la main, substituez vous-même le code de devise ou le flux émettra le texte littéral {{CURRENCY}}.

IndicateurRemarques
--title=<titre>Titre du flux
--channel=<canal>Nom ou hash du canal. Exécutez wp adt-feed channel list pour voir les valeurs valides. Passer --country restreint la correspondance des noms aux canaux génériques, car la liste des canaux est indexée par le nom complet du pays tandis que create prend un code à deux lettres, et la fourniture d'un pays saute également l'analyse de secours pour tous les pays. Laissez --country désactivé et la correspondance des noms analyse tous les pays. Un hash de canal se résout toujours, quoi que vous passiez, donc si create signale « Canal inconnu » pour un canal que vous pouvez voir dans la liste, passez plutôt le hash.
--country=<pays>Code pays à deux lettres, par exemple AU ou US
--file-format=<format>L'un des formats de wp adt-feed format list
--refresh-interval=<intervalle>hourly, twicedaily, ou daily. Omettez le drapeau pour laisser le flux non planifié. La valeur n'est pas validée. Toute autre chaîne est stockée telle quelle : passer empty stocke le mot littéral et, une fois le flux publié, enregistre une action unique datée du 1970-01-01 au lieu d'un rafraîchissement récurrent, de sorte que le flux ne se rafraîchit jamais selon un calendrier.
--post-status=<statut>draft (par défaut) ou publish
--from-file=<chemin>Chemin vers un fichier JSON avec les propriétés du flux. Tous les drapeaux que vous passez outrepassent la valeur correspondante dans le fichier
--porcelainAffiche uniquement l'ID du nouveau flux, utile pour les scripts
wp adt-feed create --title="My Feed" --channel="Google Shopping" --country=AU --file-format=xml
wp adt-feed create --from-file=./feed.json --post-status=publish

Si vous ne spécifiez pas d'intervalle de rafraîchissement, le flux ne se rafraîchira pas automatiquement tant que vous n'en aurez pas défini un. Définir --post-status=publish enregistre également le calendrier de rafraîchissement du flux immédiatement, de la même manière que de cliquer sur Activer dans l'interface d'administration.

Pour des instructions détaillées sur l'exclusion ou l'inclusion de produits par condition, consultez Comment créer des filtres pour votre flux de produits. Pour des instructions détaillées sur la modification des valeurs d'attribut avant qu'elles n'atteignent le flux, consultez Comment créer des règles.

Mettre à jour un flux

Modifie une ou plusieurs propriétés d'un flux existant. Accepte les mêmes drapeaux de propriété que create, plus --from-file.

wp adt-feed update 4945 --title="Renamed feed"
wp adt-feed update 4945 --refresh-interval=hourly
wp adt-feed update 4945 --from-file=./partial.json

Vous devez passer au moins un drapeau ou --from-file, sinon la commande se termine par une erreur. Si vous modifiez --refresh-interval ou --post-status, Product Feed Pro réenregistre ou annule automatiquement le calendrier de rafraîchissement pour correspondre.

Supprimer des flux

Supprime définitivement un ou plusieurs flux.

wp adt-feed delete 4945
wp adt-feed delete 4945 4955 --yes

Vous pouvez passer plusieurs ID à la fois. Par défaut, WP-CLI demande Supprimer 1 flux ? [o/n] avant de supprimer. Ajoutez --yes pour ignorer l'invite, ce qui est utile dans les scripts.

Dupliquer un flux

Clone un flux existant, y compris son canal, ses mappages, ses filtres et ses règles. La nouvelle copie est créée en tant que brouillon, mais elle hérite de l'intervalle de rafraîchissement du flux source et son calendrier est enregistré immédiatement. Exécutez wp adt-feed deactivate <new-id> si vous ne souhaitez pas que la copie se rafraîchisse encore.

wp adt-feed duplicate 4945

La copie est nommée Copie de <titre original>. Ajoutez --porcelain pour afficher uniquement l'ID du nouveau flux au lieu d'un message de confirmation.

Rafraîchir les flux

Régénère un ou plusieurs flux. C'est l'équivalent en ligne de commande de cliquer sur Rafraîchir sur l'écran Gérer les flux.

wp adt-feed refresh 4945
wp adt-feed refresh 4945 4955 --async

refresh ne construit pas le flux dans votre terminal. Il démarre une exécution et met en file d'attente le premier lot sur Action Scheduler, puis revient. L'ajout de --async met en file d'attente toute l'exécution à la place, de sorte que le flux ne démarre pas tant qu'un travailleur Action Scheduler ne l'a pas pris en charge. Dans les deux cas, le travail s'effectue dans la file d'attente Action Scheduler, de sorte que cette file d'attente doit s'exécuter pour que le flux se termine. Dans une tâche cron du serveur, suivez le rafraîchissement avec wp action-scheduler run pour vider la file d'attente dans la même session. Les flux sont générés en arrière-plan.

Annuler la génération d'un flux

Arrête un flux en cours de génération.

wp adt-feed cancel 4945

Utilisez ceci si un rafraîchissement est bloqué ou si vous avez lancé une génération par erreur. Le statut du flux passe immédiatement à stopped et les lots en attente sont désynchronisés. Le recomptage des produits est mis en file d'attente sur Action Scheduler, donc les nombres sont mis à jour une fois que la file d'attente s'exécute, pas au moment où la commande renvoie. cancel ne supprime pas un rafraîchissement que vous avez mis en file d'attente avec refresh --async s'il n'a pas encore démarré.

Activer et désactiver les flux

Publie ou met en brouillon un ou plusieurs flux, ce qui active ou désactive également leur planification de rafraîchissement.

wp adt-feed activate 4945 4955
wp adt-feed deactivate 4945

activate définit le flux sur publier et enregistre sa planification de rafraîchissement. deactivate le définit sur brouillon et annule la planification, de sorte que le flux cesse d'être rafraîchi jusqu'à ce que vous le réactiviez.

Mettre à jour les statistiques du flux

Recompte les produits dans le fichier généré d'un flux sans le régénérer.

wp adt-feed update-stats 4945

Ceci est utile si les statistiques affichées dans l'interface d'administration semblent désynchronisées avec le fichier réel, par exemple après une modification manuelle du fichier ou un problème de serveur pendant la génération.

Lister les canaux

Affiche les canaux pris en charge par Product Feed Pro, avec le nom, le hachage, la taxonomie et le type de chacun. Utilisez --fields= pour choisir d'autres colonnes. Les colonnes disponibles sont name, channel_hash, fields, taxonomy, type et utm_source.

wp adt-feed channel list
wp adt-feed channel list --country=Australia
wp adt-feed channel list --format=json --fields=name,channel_hash

Laisser --country de côté affiche uniquement les canaux génériques, qui sont Flux personnalisé plus les canaux disponibles dans tous les pays. Ajouter --country ajoute les canaux spécifiques à ce pays. Utilisez le nom complet du pays ici, pas un code à deux lettres : --country=Australie, pas --country=AU. Le code à deux lettres est correct sur create et update, où il est stocké sur le flux.

Lister les formats de fichier pris en charge

Affiche tous les formats de fichier que vous pouvez passer à --file-format lors de la création ou de la mise à jour d'un flux.

wp adt-feed format list

Quand utiliser la CLI au lieu de l'interface d'administration

Tâches cron au niveau du serveur. Si votre hôte limite le planificateur intégré de WordPress, vous pouvez déclencher wp adt-feed refresh directement à partir d'une tâche cron système à la place. Pour un guide d'installation complet, consultez Comment rafraîchir les flux de produits à l'aide des tâches cron.

Grands catalogues. Rafraîchir plusieurs grands flux via l'interface d'administration signifie garder un onglet de navigateur ouvert et attendre. wp adt-feed refresh confie le travail à Action Scheduler et renvoie votre terminal immédiatement.

Sites headless ou de staging. Si vous gérez un site sans accès administratif régulier, ou si vous automatisez la création d'un environnement de staging, la CLI vous permet de créer et de configurer des flux sans ouvrir de navigateur du tout.

Configuration en masse ou répétable. Combiner --from-file avec un modèle JSON enregistré vous permet de recréer la même configuration de flux de manière cohérente sur plusieurs sites ou environnements.

Pour un flux unique, des modifications occasionnelles, ou si vous n'êtes pas à l'aise avec un terminal, l'interface d'administration reste le choix le plus simple.

Dépannage

« Flux introuvable » alors que je sais qu’il existe
Vérifiez l’ID ou le hachage que vous avez transmis. Les commandes acceptent soit l’ID de publication numérique du flux, soit son ancien hachage de projet, mais une faute de frappe dans l’un ou l’autre renverra cette erreur. Exécutez wp adt-feed list --format=ids pour obtenir une liste confirmée d’ID valides.
« Canal inconnu » lors de la création ou de la mise à jour d’un flux
La valeur --channel doit correspondre exactement à un nom de canal ou à un hachage, et la correspondance est insensible à la casse mais pas floue. Exécutez d’abord wp adt-feed channel list pour copier le nom exact ou le hachage dont vous avez besoin.
« Propriétés requises manquantes » lors de la création d’un flux
create nécessite au minimum title, channel_hash (résolu à partir de --channel), country et file-format. Avec --from-file, le fichier est lu en premier, puis les indicateurs que vous passez sont appliqués par-dessus, de sorte qu’un indicateur peut fournir une clé que le fichier omet. Si l’erreur persiste, la valeur est manquante à la fois dans le fichier et dans les indicateurs.
Un rafraîchissement ne semble pas s’exécuter
Vérifiez le résultat avec wp adt-feed get <id> et lisez le champ status. Si le statut est error, ouvrez WooCommerce > Statut > Journaux et lisez les entrées avec la source Product Feed Pro by AdTribes.io. Si le statut reste processing et que le fichier ne grossit pas, la file d’attente Action Scheduler ne s’exécute pas, videz-la donc avec wp action-scheduler run. Le terminal ne signale jamais le résultat d’un rafraîchissement, seulement qu’un rafraîchissement a démarré, alors laissez passer quelques instants et vérifiez à nouveau le statut.

FAQ

Ai-je besoin de Product Feed Elite ou d’un plan payant pour utiliser ces commandes ?
Non. Les commandes WP-CLI font partie de la version gratuite/Pro de Product Feed Pro. Vous n’avez pas besoin d’une licence Elite ou d’un abonnement actif pour les utiliser.
Puis-je utiliser ces commandes sur un site où WP-CLI n’est pas installé ?
Non. Les commandes CLI de Product Feed Pro s’enregistrent auprès d’une installation WP-CLI existante ; elles n’installent pas WP-CLI pour vous. Si wp n’est pas configuré sur votre serveur, installez-le d’abord.
Que se passe-t-il si j’exécute une commande sans aucun argument ?
La plupart des commandes nécessitent au moins un ID ou un ensemble d’indicateurs. En exécuter une sans l’entrée requise renvoie une erreur WP-CLI expliquant ce qui manque, plutôt que de ne rien faire silencieusement.
Puis-je planifier des rafraîchissements de flux avec WP-CLI de la même manière que la planification intégrée du plugin ?
Oui. Pointez un cron job système vers wp adt-feed refresh <id> --async pour les flux que vous souhaitez contrôler en dehors des options horaires, bi-quotidiennes ou quotidiennes du plugin. Voir Comment actualiser les flux de produits à l’aide des tâches cron pour la configuration complète.

Besoin de plus d'aide ?

Si vous êtes sur un plan premium et que vous rencontrez des problèmes avec les commandes CLI, ouvrez un ticket de support, et notre équipe vous aidera à résoudre le problème.

Si vous utilisez la version gratuite de Product Feed Pro, posez votre question sur le forum de support WordPress.org, et notre équipe vous répondra là-bas.

Cet article vous a-t-il été utile ?

Articles connexes

Finaliser votre achat
Flux de produits WooCommerce AdTribes

Le meilleur plugin de flux de produits WooCommerce

  • AdTribes Pty Ltd
    ABN : 40 675 636 816
Produit
Ressources et informations
Sites partenaires
Rymera