Plugin WordPress Query Monitor : Déboguons et améliorons les performances

Publié: 2019-09-05
moniteur de requête
Suivez @Cloudways

Vous recevez des erreurs WordPress mais vous ne parvenez pas à les résoudre ?

Pour détecter les erreurs WordPress, les développeurs travaillent généralement à l'envers. Ils commencent par exclure les sections du code qui pourraient abriter le(s) problème(s), puis commencent à évaluer des domaines individuels. En général, pour les sites Web WordPress, les principaux sujets de préoccupation sont les paramètres PHP, le fichier .htaccess, le fichier wp-config, les requêtes de base de données et les paramètres DNS.

Il y a quelque temps, je suis tombé sur le plugin WordPress Query Monitor, un excellent outil de développement pour découvrir ce qui se passe sur le site Web. Le plugin offre des informations détaillées que les développeurs peuvent utiliser pour affiner les zones "troublées" du code.

Dans ce tutoriel sur le plugin, je vais commencer par une introduction détaillée du plugin WordPress Query Monitor, puis entrer dans une brève description du cas d'utilisation courant du plugin.

  • Qu'est-ce que le moniteur de requêtes WordPress ?
  • Fonctionnalités de WordPress Query Monitor
  • Pourquoi Query Monitor est-il utile pour les développeurs ?
  • Comment utiliser WordPress Query Monitor ?

Qu'est-ce que le moniteur de requêtes WordPress ?

Query Monitor est un plugin WordPress qui ajoute une grande valeur à la phase de débogage et améliore généralement les performances globales de vos workflows de développement WordPress.

Le plugin ajoute une entrée dans la barre de menu supérieure qui agit comme une liste déroulante qui contient le nombre de requêtes en cours d'exécution sur la page en cours, le temps de chargement, des filtres par type de requête, des filtres par composants, etc. En conséquence, les développeurs avoir une meilleure idée de ce qui pourrait être à l'origine des erreurs sur le site Web.

plugin de moniteur de requête wordpress

Il a été développé par John Blackbourn et est disponible à la fois sur le référentiel officiel des plugins WordPress et sur GitHub. Comme tous les excellents plugins WordPress, Query Monitor est régulièrement mis à jour et l'équipe de développement fournit un excellent support et des correctifs pour tous les bogues signalés.

L'installation est très simple et ne nécessite généralement pas d'étapes supplémentaires (par rapport au processus d'installation de plugins similaires). Après l'installation, ce plugin de débogage WordPress n'a pas besoin de configuration supplémentaire. Dès la sortie de la boîte, il commence à afficher la liste déroulante dans la barre d'outils d'administration.

paramètres du moniteur de requête

En cliquant sur les entrées de la liste déroulante, vous pouvez accéder aux détails des requêtes effectuées sur la base de données, les scripts et CSS chargés, les hooks actifs et les appels d'API HTTP.

barre d'outils

Fonctionnalités de WordPress Query Monitor

Voici un bref aperçu des fonctionnalités du plugin Query Monitor.

Erreurs de thème

La fonctionnalité de thème répertorie toutes les requêtes déclenchées par le thème WordPress installé. Il affiche le nom de fichier du modèle de thème responsable d'une requête spécifique et affiche la hiérarchie complète des modèles. La fonction de thème met également en évidence les parties de thème déchargées et le nom du thème WordPress actif.

Erreurs PHP

WordPress fonctionne sur PHP et que la requête soit générée par un thème ou un plugin elle se présente sous la forme d'un code PHP. La fonction Erreurs PHP met en évidence les composants source et l'emplacement responsable de la génération de la requête.

Remarque : Toutes les requêtes répertoriées dans le moniteur de requêtes ne sont pas sérieuses. Il est fort possible qu'il ne s'agisse que d'un avertissement.

Appels AJAX

Les sites WordPress dynamiques effectuent de nombreux appels Ajax pour envoyer et récupérer des données en temps réel sans charger la page Web complète. Query Monitor affiche également ces demandes ainsi que d'autres informations de débogage utiles. Ces informations peuvent aider le développeur à mettre en évidence les éventuelles erreurs.

API REST

Si vous êtes autorisé à surveiller le moniteur de requêtes, vous pouvez déboguer les informations présentées dans l'en-tête d'une requête d'une API REST WordPress authentifiée. Actuellement, le plugin ne prend en charge que les erreurs PHP et l'utilisation de la mémoire.

Authentification

Par défaut, seul l'administrateur d'une installation sur un seul site et le super administrateur d'un multisite WordPress peuvent afficher les journaux dans le moniteur de requêtes. Cependant, vous pouvez configurer un cookie d'authentification qui vous permet de voir les journaux même lorsque vous êtes connecté en tant qu'utilisateur.

Déclaration de confidentialité

WordPress Query Monitor ne collecte aucune donnée et n'envoie aucune donnée à des tiers.

J'ai également remarqué que la FAQ indique que les modules complémentaires de la barre de débogage peuvent être utilisés avec Query Monitor, il suffit de désactiver d'abord la barre de débogage. Et il existe également des modules complémentaires pour Query Monitor.

Pourquoi Query Monitor est-il utile pour les développeurs ?

Avec le plugin Query Monitor, les développeurs peuvent avoir une idée juste des domaines à améliorer. Plus que cela, les développeurs peuvent découvrir le plugin ou d'autres actifs du site Web qui consomment un volume anormal de ressources ou (dans le pire des cas) sont en conflit avec le reste des fichiers principaux.

Pour les propriétaires de sites Web et les développeurs intéressés par l'amélioration de l'optimisation des performances Web (WPO), Query Monitor est une solution idéale pour identifier les goulots d'étranglement qui peuvent être corrigés avec des extraits de code améliorés, des alternatives ou, dans certains cas, un remplacement complet des scripts/plugins.

Considérons une tâche de développement simple : découvrir le temps de chargement de la page et le nombre de requêtes actives sur la page.

WordPress propose deux fonctions simples : get_num_queries() et timer_stop() . Comme son nom l' indique , get_num_queries() renvoie le nombre de requêtes de base de données générées lors de l'exécution et timer_stop() renvoie le nombre de secondes nécessaires pour générer la page.

Comment utiliser WordPress Query Monitor ?

Une fois que vous avez installé et activé Query Monitor, vous devez aller dans Plugins → Plugins installés → Query Monitor → Paramètres , puis cliquez sur le bouton « Définir le cookie d'authentification ». Voyons maintenant chaque section du plugin Query Monitor en détail.

Aperçu

Le premier onglet vous donne un aperçu de votre site Web. Il vous montre le temps de génération de page, l'utilisation maximale de la mémoire, le temps de requête de base de données et les requêtes de base de données.

Aperçu

Requêtes de base de données

Chaque fois qu'un utilisateur demande des informations ou essaie de soumettre les informations, une requête de base de données est déclenchée. Query Monitor suit cette requête et l'affiche dans les journaux afin que vous, en tant qu'utilisateur, puissiez voir quelles requêtes ont été exécutées avec succès et lesquelles ne l'ont pas été. Et pourrait également filtrer par type et composant de la requête.

requêtes

Demander

La fonction de demande affiche la variable de requête pour l'utilisateur actuel et met en évidence la requête personnalisée. Il affiche également les chaînes de requête associées présentes dans une requête.

demander

Écran d'administration

Cette section montre les activités qui se déroulent sur le panneau d'administration de WordPress. Il répertorie les composants accessibles à partir du panneau d'administration et affiche une erreur due à l'indisponibilité d'un fichier PHP.

écran d'administration

Scénarios

Lorsque vous visitez l'onglet Scripts dans le moniteur de requêtes, il répertorie tous les scripts et styles en file d'attente inclus dans la demande. Il met également en évidence tout script cassé ou ne répondant pas en raison d'une dépendance externe.

scripts

modes

Il est tout à fait possible qu'en raison d'une dépendance externe, un certain fichier CSS ne se charge pas et casse la mise en page de votre page Web. Cette section traite des feuilles de style CSS et vous aide à identifier les fichiers source derrière toute requête.

modes

Crochets et actions

Les crochets et les actions jouent un rôle important dans tout site WordPress car ils vous permettent de créer une fonctionnalité personnalisée à l'aide des contrôles prédéfinis fournis par WordPress lui-même. Cela peut parfois casser votre site Web et le dépannage de l'erreur peut être un travail fatigant.

Merci à Query Monitor qui dispose d'un outil intégré pour identifier les erreurs causées par les hooks et les actions. Cela vous permet de filtrer les actions et les crochets par cœur, thème ou plugin. Et vous donner également le nom complet et la référence qui peuvent être trouvés facilement dans le code à des fins de débogage.

crochets et actions

Langues

Dans le cas d'un site Web multilingue, l'onglet Langue identifie tous les fichiers cassés ou indisponibles et affiche également les paramètres de langue.

langues

Appels d'API HTTP

Cet onglet affiche toutes les requêtes côté serveur et affiche également le code de réponse, le journal du délai d'expiration et les demandes ayant échoué. C'est une fonctionnalité utile car elle vous permet de voir la réponse en temps réel et vous aide à déboguer efficacement le code côté serveur.

appels api http

Mises à jour transitoires

WordPress est capable de mettre en cache la réponse de l'API dans sa base de données car certaines API n'autorisent qu'un certain nombre de requêtes à un moment donné. Transient Updates affiche ces transitoires et affiche également la taille et le composant.

mises à jour transitoires

Contrôles de capacité

Par défaut, celui-ci est inactif et peut être activé en plaçant le code dans le fichier wp-config.php. Capability Checks effectue des contrôles de capacité pour chaque utilisateur sur la page et affiche les paramètres avec le résultat.

contrôles de capacité

Environnement

Ceci est un aperçu complet de l'environnement WordPress et contient trois sections pour PHP, Base de données et WordPress. A l'intérieur de chaque section, des informations utiles sur l'environnement sont affichées telles que la version MySQL, la limite de mémoire PHP, la version WordPress, etc.

environnement

Conditionnels

Affiche toutes les conditions WordPress sur la demande actuelle.

conditionnels

Emballer!

Le plugin WordPress Query Monitor se concentre sur le débogage et fournit toutes les informations pertinentes de manière facile à comprendre. Le plugin est idéal pour identifier rapidement les plugins, thèmes ou fonctions qui affectent les performances du site Web.

Le plugin intègre un menu dans la barre d'outils d'administration qui affiche une description générale de la page actuelle, avec des données complètes affichées dans un panneau (une fois que vous avez sélectionné un élément de menu). Lequel de ces composants utilisez-vous le plus souvent pour maintenir la santé de votre site ? Aucune suggestion?