Découvrez ce qui ne va pas avec votre WordPress avec DebugPress

Publié: 2020-10-13

Aujourd'hui, nous allons tester DebugPress, un plugin WordPress récemment publié pour enquêter sur d'éventuels problèmes avec votre installation.

L'un des avantages de WordPress est que le nombre de modifications que vous pouvez apporter à une nouvelle installation est presque infini. Mais cela peut aussi être une épée à double tranchant. Plus une installation WordPress est complexe, plus il est facile d'avoir des incompatibilités et des problèmes potentiels, et plus il est difficile de les trouver.

Installation et configuration de DebugPress

DebugPress est un développeur de plugins WordPress de Milan Petrovic que vous pouvez trouver dans le répertoire des plugins WordPress.org. Cela signifie que vous pouvez accéder à votre installation WordPress, accéder au menu Plugins et en ajouter un nouveau. En recherchant simplement le mot-clé " DebugPress ", vous trouverez le plugin et vous pourrez le télécharger et l'activer à partir de là.

Une fois que vous l'avez activé dans votre WordPress, allez dans les paramètres DebugPress (dans le menu Paramètres) pour configurer le plugin :

Parmi les éléments que vous pouvez modifier, vous avez la possibilité de limiter les rôles d'utilisateur pouvant accéder au panneau DebugPress. Vous pouvez également décider quels panneaux supplémentaires activer. Dans mon cas, je les ai tous activés dans mon installation de test.

De la même manière, j'ai activé DebugPress pour suivre toutes les erreurs et alertes PHP, ainsi que les appels AJAX et d'autres options. Aussi, pour que DebugPress puisse afficher des informations sur les requêtes SQL et l'activité dans le journal des erreurs de WordPress, j'ai défini les constantes suivantes dans le fichier wp-config.php de mon installation :

 define('WP_DEBUG', true); define('WP_DEBUG_DISPLAY', false); define('WP_DEBUG_LOG', true); define('SAVEQUERIES', true);

J'avais déjà défini les deux premières constantes auparavant, car je teste DebugPress sur mon installation de développement et de test. Si vous êtes développeur, je vous recommande de les définir également, car vous devriez probablement être intéressé à obtenir le plus de retours possible de WordPress (par défaut, il les masque tous).

Les deux autres constantes activent le journal des erreurs (un fichier debug.log stocké dans le dossier /wp-content/ de votre installation) et le stockage des requêtes dont nous avons parlé. Notez que vous ne pouvez pas définir ces constantes, mais certains panneaux DebugPress n'afficheront pas autant d'informations que possible.

L'icône permettant d'afficher le panneau DebugPress apparaît sur le côté droit de la barre supérieure de WordPress.
L'icône pour ouvrir les panneaux DebugPress apparaît sur le côté droit de la barre d'administration supérieure de WordPress.

Lorsque tout est prêt, vous pouvez vous rendre sur l'icône du bogue qui apparaît dans le coin supérieur droit de votre WordPress. Cette icône apparaîtra à la fois dans le tableau de bord WordPress et lorsque vous accéderez à l'interface de votre site Web (vous pouvez modifier cette dernière dans les paramètres DebugPress).

Là, DebugPress vous fournit des informations sur votre installation WordPress et sur ce qui se passe lorsque vous accédez à l'interface de votre site Web.

Les panneaux d'information DebugPress

Lorsque l'on clique sur le bouton DebugPress, une popup s'ouvre avec plusieurs panneaux regroupés dans des onglets. Chaque onglet contient les panneaux spécifiques d'un type particulier d'information. Voyons chacun d'eux et quelles informations ils contiennent.

Dans le premier onglet, nous avons les informations de base sur notre installation WordPress. Ici on peut voir la mémoire PHP et les limites de temps d'exécution, la version WordPress, et les répertoires les plus importants de l'installation, ainsi que la valeur de certaines balises conditionnelles WordPress pour savoir si l'installation est multisite, entre autres.

Panneau DebugPress Basics.
Panneau DebugPress Basics.

De plus, dans DebugPress, vous avez des statistiques de chargement de page. Ceci est particulièrement utile pour voir si la page a mis plus de temps que prévu à se charger, ainsi que pour connaître le nombre de requêtes SQL qui ont été effectuées, le nombre de hooks qui ont été exécutés et la mémoire utilisée par PHP.

Dans l'onglet DebugPress Request , nous avons des informations sur la demande actuelle qui a été faite au serveur WordPress. Nous pouvons voir l'URL qui a été demandée, ainsi que les en-têtes de la demande et de la réponse. Encore une fois, cela est particulièrement utile pour voir si les informations contenues dans la demande et la réponse obtenue sont correctes et ne posent aucun problème.

Panneau de demande dans DebugPress.
Panneau de demande de DebugPress.

Dans l'onglet Admin , vous avez des données sur la page actuelle du tableau de bord WordPress. En accédant au calendrier éditorial de Nelio Content dans mon installation je peux voir la valeur de la variable $pagenow ainsi que les valeurs de l' écran en cours :

Panneau d'administration dans DebugPress
Panneau d'administration DebugPress.

L'un des onglets les plus intéressants de DebugPress est Content . Ici, vous pouvez voir la liste complète des types de publication personnalisés enregistrés dans WordPress, ainsi que les taxonomies personnalisées et les statuts de publication. En outre, vous pouvez développer chacun de ces types et voir les valeurs qu'ils ont.

Panneau de contenu DebugPress.
Panneau de contenu DebugPress.

Dans l'onglet Constantes , nous avons toutes les constantes définies dans WordPress. De plus, pour chaque constante définie on peut voir sa valeur à cet instant précis :

DebugPress Panneau Constantes.
DebugPress Panneau Constantes.

Dans l'onglet Requêtes SQL de DebugPress, nous pouvons voir à tout moment quelles requêtes SQL ont été exécutées pour afficher la page en cours. En plus de voir chacune de ces requêtes, on peut les ordonner par leur temps d'exécution et ainsi avoir en un coup d'œil quelles requêtes sont les plus lentes, ainsi que les fonctions PHP qui les ont appelées.

Si vous avez un plugin qui fait des choses étranges avec la base de données et rend votre site Web beaucoup plus lent, avec cette vue, vous pourrez identifier la source de vos problèmes.

DebugAppuyez sur le panneau Requêtes SQL.
DebugAppuyez sur le panneau Requêtes SQL.

Dans l'onglet DebugPress User , nous avons toutes les informations de l'utilisateur actuel. Cela inclut à la fois les informations que nous pouvons trouver dans la table wp_users et dans la table wp_usermeta de la base de données WordPress.

Si vous n'avez pas accès à la base de données et que vous avez besoin de voir le rôle de votre utilisateur et les capacités spécifiques qui vous ont été attribuées, ce panneau vous sera très utile.

Panneau d'utilisateur DebugPress.
Panneau d'utilisateur DebugPress.

Un autre panneau DebugPress intéressant est celui qui vous montre tous les styles et scripts mis en file d'attente dans WordPress sur une page spécifique. Plusieurs fois, nous avons eu des problèmes avec les utilisateurs de certains de nos plugins car nos scripts JavaScript n'étaient pas chargés lors de leur installation. Avoir cette information est d'un intérêt particulier pour les développeurs comme nous.

Nous pouvons maintenant demander aux utilisateurs qui sont plus réticents à nous donner accès à leur installation WordPress d'installer DebugPress et de partager avec nous une capture d'écran de l'onglet Enqueue pour voir s'il y a des scripts qui ne se chargent pas comme ils le devraient. Le dépannage avec ces informations devrait être plus facile.

DebugPress Panneau de mise en file d'attente.
DebugPress Panneau de mise en file d'attente.

Dans le panneau PHP , nous pouvons voir les informations contenues dans les variables PHP $_SERVER , $_REQUEST et $_COOKIE pour la requête de la page en cours :

DebugAppuyez sur le tableau de bord PHP.
DebugPress Panneau PHP.

De plus, dans l'onglet Système , nous avons des informations générales sur le serveur WordPress. Il est important ici de pouvoir voir la version de PHP que vous utilisez, l'adresse IP du serveur et certaines limites sur la taille de téléchargement et le temps d'exécution :

Panneau système DebugPress.
Panneau système DebugPress.

Enfin, dans l'onglet AJAX , nous voyons les appels AJAX exécutés sur la page en cours. Dans cette vue, je dois dire que je n'ai pas trouvé de choses intéressantes : si vous avez accès à l'installation de WordPress, ce que vous pouvez trouver sur les appels AJAX dans la console développeur du navigateur lui-même est beaucoup plus intéressant que ce que DebugPress montre ici.

DebugAppuyez sur le panneau AJAX.
DebugAppuyez sur le panneau AJAX.

Enfin, à côté du bouton pour fermer la fenêtre DebugPress que nous trouvons dans le coin supérieur droit, nous voyons qu'il y a un bouton en forme de feuille de papier. Ce bouton ouvre la vue dans laquelle nous pouvons voir le journal WordPress que nous avons activé au début.

Ici, nous voyons où le journal est stocké dans l'installation et la taille du fichier. Vous pouvez utiliser le gros bouton bleu pour charger le fichier journal, mais je crains de ne pas pouvoir le faire.

Vue du journal WordPress dans DebugPress.
Vue du journal WordPress dans DebugPress.

A chaque fois que je clique sur ce bouton bleu une requête AJAX est lancée par DebugPress, qui renvoie une erreur. Nous pouvons voir cette requête échouée dans l'onglet AJAX de DebugPress.

Si j'ouvre le fichier journal WordPress avec n'importe quel éditeur de texte, je vois qu'il y a une erreur dans DebugPress qui se produit lorsque je clique sur ce bouton. Donc je suppose qu'actuellement cette version de DebugPress a un bogue que le développeur corrigera dans les futures versions.

Lorsque vous essayez de charger les informations du journal WordPress, DebugPress donne une erreur que nous pouvons voir avec DebugPress lui-même.
Lorsque vous essayez de charger les informations du journal WordPress, DebugPress génère une erreur AJAX que nous pouvons voir avec DebugPress lui-même.

Pourtant, cela a été le seul inconvénient que j'ai pu trouver après avoir testé de manière approfondie les différentes vues et panneaux fournis par DebugPress.

Avis sur DebugPress

Bien que toutes les informations que DebugPress nous fournit puissent être consultées par d'autres moyens, les avoir toutes au même endroit est la chose la plus précieuse de ce plugin.

Évidemment, DebugPress n'est pas un plugin à garder activé tout le temps dans votre WordPress, mais il peut être d'une grande aide lorsque vous devez enquêter sur d'éventuels problèmes d'installation d'un client dont vous ne savez pas trop pourquoi ils se produisent. Espérons que DebugPress puisse vous aider à deviner quels sont les problèmes et à partir de là, tirez le fil pour réparer votre WordPress.

Avec DebugPress, vous disposez de toutes les informations nécessaires pour que la recherche de problèmes dans WordPress soit un peu plus facile. J'espère qu'ils résoudront les problèmes qu'ils ont avec le journal et amélioreront ainsi encore plus la qualité de ce plugin, totalement recommandé pour les développeurs WordPress.

Image sélectionnée par Xuan Nguyen sur Unsplash.