Eine Frage, die ich oft gestellt bekomme, lautet: Welches Plugin verwendest du auf jeder Seite? Meine Antwort ist normalerweise: keines … außer wenn ich die Website gerade entwickle. Dann ist es Query Monitor und hier ist der Grund dafür.
Was macht Query Monitor?
Das Query Monitor Plugin ist DAS Debugging-Plugin für WordPress. Ursprünglich half es nur beim Debuggen von SQL-Abfragen, aber jetzt kann es zum Debuggen von fast allem in WordPress verwendet werden. Ich habe schon einige Beiträge darüber geschrieben, aber schauen wir uns einige der hunderten von Debugging-Funktionen an, die es mirbringt:
- SQL-Abfragen
- HTTP-Anfragen
- Geladene Template-Dateien (Partials) und verwendete Template-Hierarchie-Datei
- Geladene JavaScript-Dateien
- Geladene CSS-Dateien
- Verwendete Hooks (Actions und Filter)
- Geladene Übersetzungsdateien (und Auflistung der fehlenden Dateien)
- Vom Backend durchgeführte HTTP-API-Anfragen
- Aktualisierte Transients
- Überprüfte Berechtigungen (Capabilites)
- Informationen über die Umgebung (PHP, Datenbank, WordPress, Server)
- Liste aller true/false Conditional Tags auf der aktuellen Seite
Query Monitor ist im Frontend und Backend verfügbar. Standardmäßig können ihn nur Administrator-User nutzen, aber ihr können ein Authentifizierungs-Cookie setzen, um ihn auch dann zu nutzen, wenn ihr abgemeldet seid, was sehr hilfreich ist, wenn ihr eine Website ohne Login debuggen wollen.
Warum verwende ich Query Monitor?
Wenn ihr gerade eine Website baut und etwas funktioniert nicht, dann könnt ihr viele Schritte unternehmen, um das Problem zu beheben. Für viele typische Probleme müsst aber nicht einmal den WP_DEBUG Modus aktivieren oder etwas wie Xdebug verwenden. Das Query Monitor Plugin kann euch oft einfach sagen, was schiefgelaufen ist.
Es ist auch sehr hilfreich, um langsame SQL-Abfragen zu finden und dann weiter zu untersuchen, warum sie so langsam sind. Ich verwende es auch häufig, um herauszufinden, warum manche Übersetzungen nicht funktionieren – oft, weil WordPress versucht, eine Datei mit dem falschen Namen zu laden.
Ich weiß nicht, wie viele Stunden oder sogar Tage an Debugging-Zeit ich gespart habe, nur weil ich Query Monitor immer benutze. Irgendwann habe ich sogar einen Alias zu meinem Linux-System hinzugefügt, um Query Monitor über die WP-CLI zu installieren, nur weil ich das so oft gemacht habe. 😅
Fazit
Wenn ihr eine Website entwickelt und diese debuggen müsst, dann sollten ihr euch Query Monitor einmal ansehen, falls ihr es nicht ohnehin schon in eurem Werkzeugkasten habt.
Ihr könnt Query Monitor auch mit eurem eigenen Panel erweitern, was ich in dem Blogpost „Ein eigenes Panel zum Query Monitor hinzufügen“ Anfang des Jahres beschrieben habe.
Benutzen ihr Query Monitor? Falls ja, welche Funktionen nutzt ihr am häufigsten?
