Ajouter un lien avec le nombre d'articles et le total du panier WooCommerce photo

Mettre à jour la base de données WooCommerce avec WP-CLI

Après une mise à jour de WooCommerce, WordPress peut afficher un message du type : WooCommerce database update required. En français : WooCommerce a été mis à jour, mais sa base de données doit encore suivre le mouvement.

Dans l’administration WordPress, WooCommerce propose un bouton pour lancer cette mise à jour. Mais sur une boutique active, un gros catalogue, ou un serveur où les requêtes web peuvent expirer, WP-CLI est souvent plus propre. Le terminal n’a pas peur des gros paniers. Lui.

Ce que fait la mise à jour de la base WooCommerce

WooCommerce stocke ses données dans la base WordPress : produits, commandes, clients, réglages, taxes, coupons, attributs, journaux, lookup tables, webhooks et métadonnées diverses.

Quand une nouvelle version de WooCommerce introduit une modification de structure ou de données, le plugin peut devoir exécuter une mise à jour de base. Cette opération adapte les données existantes à la version installée.

Concrètement, cela peut mettre à jour des options, créer ou modifier des tables, régénérer certaines données, ou planifier des tâches d’arrière-plan via Action Scheduler.

Lire Mettre à jour la base de données WooCommerce avec WP-CLI

The SEO Framework : résoudre l'erreur 404 du fichier sitemap.xml sous NginX photo

The SEO Framework : corriger une erreur 404 sur sitemap.xml avec nginx

Avec WordPress, nginx et The SEO Framework, il peut arriver que l’URL /sitemap.xml renvoie une erreur 404 Not Found. Le plugin est actif, les permaliens fonctionnent, mais le sitemap refuse de s’afficher. Classique. Agaçant. Très nginx.

Dans la plupart des cas, The SEO Framework n’est pas le coupable. Le problème vient de la configuration nginx : une règle intercepte les fichiers .xml avant que WordPress puisse générer le sitemap virtuel.

Pourquoi sitemap.xml peut renvoyer une 404 sous nginx

The SEO Framework génère son sitemap dynamiquement. Cela signifie que /sitemap.xml n’est pas forcément un vrai fichier présent sur le disque. C’est une URL virtuelle servie par WordPress.

Avec Apache, WordPress peut souvent gérer ce type de réécriture via .htaccess. Avec nginx, c’est différent : il n’y a pas de fichier .htaccess lu dossier par dossier. Les règles doivent être écrites dans le server block nginx.

Si nginx tente de servir /sitemap.xml comme un fichier statique réel, il cherche un fichier nommé sitemap.xml à la racine du site. S’il n’existe pas, nginx renvoie une 404 avant même que WordPress puisse répondre.

Lire The SEO Framework : corriger une erreur 404 sur sitemap.xml avec nginx

WordPress : résoudre l'erreur "ftp_nlist() expects parameter 1 to be resource" photo

WP-CLI : lister toutes les URLs des articles publiés WordPress

WP-CLI permet de lister très rapidement les articles publiés d’un site WordPress, sans passer par l’administration. C’est pratique pour créer un export d’URLs, préparer une campagne de partage social, auditer un site, vérifier des contenus programmés, ou alimenter un outil externe.

Dans mon cas, j’avais besoin de récupérer les URLs des articles publiés pour les soumettre à SocialBee. Comme l’outil accepte des lots de 100 URLs, WP-CLI est parfait : une commande, une pagination, et c’est plié proprement.

Lister toutes les URLs des articles publiés

La commande de base est très simple :

wp post list --post_type=post --post_status=publish --field=urlLangage du code : PHP (php)

Elle retourne une URL par ligne, uniquement pour les articles publiés.

Les arguments importants sont :

  • wp post list liste les contenus WordPress.
  • --post_type=post limite la requête aux articles.
  • --post_status=publish limite la requête aux contenus publiés.
  • --field=url affiche uniquement l’URL de chaque article.

WP-CLI accepte ici les arguments de WP_Query. Vous pouvez donc filtrer les résultats comme vous le feriez dans une requête WordPress classique.

Lire WP-CLI : lister toutes les URLs des articles publiés WordPress