Ludovicclain. Com wordpress : votre site connaît un problème technique

WordPress : désactiver ses plugins en 1 ligne de commande via le Terminal

Depuis WordPress 5.2, vous recevez un courriel lorsqu’une extension ou un thème cause une erreur fatale à votre site, il ressemble à ceci :

Screen shot 2022 01 20 at 13. 44. 53
Cela peut arriver notamment lorsque une mise à jour s’est mal passée

Vous ne pouvez souvent plus accéder à votre administration WordPress et pire, parfois vous n’avez presqu’aucune information sur ce qui s’est passé et ce qui a pu causer le plantage.

La procédure en générale à suivre est de désactiver tous les plugins puis de les réactiver un a un pour tenter de « reproduire » l’erreur (avec les logs du debug activés au préalable).

Plus accès à l’administration WordPress

Seulement voilà, lors d’une erreur fatale, comme souvent vous n’avez plus accès à l’administration WordPress, il devient impossible de désactiver/réactiver les plugins par cette voie. L’astuce (la plupart du temps recommandée) est alors d’accéder au dossier des plugins via le File Manager de votre cPanel ou par FTP, puis de renommer chaque dossier de plugin.

Le faire à la main peut être long si vous avez plus d’une cinquantaine de plugins d’installés, je vais vous montrer ici comment le faire en 1 ligne de commande via le Terminal de votre cPanel ou par SSH.

Désactiver tous les plugins WordPress en 1 ligne de commande

Désactiver plugins wp 2022 01 20 14 14 10 1
Rajouter un point d’interrogation devant le nom du dossier de chaque plugin

Si votre hébergeur met à votre disposition un Terminal dans votre cPanel, cela peut être assez simple, il vous faudra juste le chemin absolu vers le dossier de vos plugins WordPress.

Ce chemin pourrait ressembler à :

/home/monNomdutilisateur/public_htmmlOUleDossierDeMonWordPress/wp-content/plugins

À partir de là, ouvrez votre Terminal et entrez la ligne suivante :

cd /chemin/absolu/vers-le-dossier-wp/plugins && for PLUGIN_FOLDER in $(ls -d */); do mv -v "$PLUGIN_FOLDER" "?$PLUGIN_FOLDER"; done && cd

Explication

Les 2 éléments principaux de cette ligne de code sont :

ls -d */

Celui-ci permet de lister tous les dossiers du dossier dans lequel vous êtes.

mv -v "$PLUGIN_FOLDER" "?$PLUGIN_FOLDER"

Et ce dernier permet de renommer chaque dossier en rajoutant un point d’interrogation devant chaque nom.

Bonus

Vous pourriez avoir envie de faire marche-arrière, voici la ligne de commande qui remet tout dans l’ordre :

cd /chemin/absolu/vers-le-dossier-wp/plugins && for PLUGIN_FOLDER in $(ls -d */); do mv -v "$PLUGIN_FOLDER" "${PLUGIN_FOLDER//\?/}"; done && cd

Avec cette ligne tous vos dossiers reviennent à leur nom d’origine.

L’explication en vidéo

2022 01 20 14 53 27
(cliquez sur l’image pour accéder au live)

Liens utiles :

Cet article vous a été utile ?
Oui 👍 Non 👎
Retour en haut