Existe-t-il une commande WP-CLI permettant de désactiver les fenêtres de commentaires pour toutes les publications existantes (pages/blogs)?
Je demande cela depuis le moment où je change de thème pour un site que j'ai, toutes les pages de ce site recevant à nouveau leurs fenêtres de commentaires et je dois désactiver individuellement les commentaires pour chaque page.
Sur ce site particulier, j'ai jusqu'à 10 pages Web, mais je souhaiterais que ce soit le cas avec WP-CLI. C'est possible?
Si vous ne connaissez pas WP-CLI, partagez au moins un autre moyen que vous connaissez.
Voici une suggestion non testée pour l'approche wp-cli:
Nous pouvons répertorier les ID de publication des publications avec open status status avec:
wp post list --post-status=publish --post_type=post comment_status=open --format=ids
et mettre à jour un message dans un statut de commentaire fermé avec:
wp post update 123 --comment_status=closed
où 123 est un identifiant de post.
Nous pouvons ensuite combiner ces deux en:
wp post list --post-status=publish --post_type=post comment_status=open --format=ids \
| xargs -d ' ' -I % wp post update % --comment_status=closed
ou
for post_id in $(wp post list --post_status=publish \
--post_type=post --comment_status=open --format=ids); \
do wp post update $post_id --comment_status=closed; done;
Ensuite, il y a aussi le ping_status
à considérer.
Il existe d'autres moyens que wp-cli, mais n'oubliez pas de prendre backup avant les tests.
Vous pouvez exécuter une requête SQL pour modifier le statut des commentaires de toutes les publications à l'aide de la commande wp db query
.
wp db query "UPDATE wp_posts SET comment_status = 'closed';"