Lädt eine Webseite zu lange, erhöht sich die Absprungrate von Besuchern. Das weiß man heutzutage und weiß auch Google als die Suchmaschine Nr. 1 in Deutschland. Daher haben schnell ladende Webseiten einen Rankingvorteil gegenüber lahmen Schnecken. Bei WordPress hängt die Performance vor allem an den Datenbankabfragen. Wie man diese und die Seitenladezeit auslesen und ausgeben kann, zeige ich hier.
Inhaltsverzeichnis:
Wieso interessieren mich Datenbankabfragen, wenn meine WordPress-Webseite langsam ist?
Eine WordPress-Webseite stellt für alle Inhalte und auch für bestimmte Elemente (wie Sidebar Widgets) Anfragen an die Datenbank, die diese Inhalte enthält. Je mehr Anfragen für die Darstellung einer kompletten Seite nötig sind, desto langsamer lädt diese. Daher möchte man für Performance-Optimierungen gerne herausfinden, ob denn die Anzahl an Abfragen zu hoch ist und durch gewisse Maßnahmen verringert werden können.
Abfrage von Queries und Page-Load-Time im WordPress Theme
Man fügt folgenden Code an beliebiger Stelle des Themes ein. Zum Beispiel in die footer.php für die direkte Ausgabe auf der Webseite:
<?php echo get_num_queries(); ?/> Datenbankabfragen in <?php timer_stop(1); ?/> Sekunden
Möchte man die Ausgabe nicht so offensichtlich machen, kann man das Ganze auch in ein <input type=“hidden“ /> einfügen, damit nur im Quellcode diese Infos zu finden sind. Das sieht dann so aus (z.B. in die footer.php des Themes vor dem abschließenden </body>-Tag):
<input type="hidden" name="queries" value="<?php echo get_num_queries(); ?>" /> <input type="hidden" name="pageloadtime" value="<?php echo timer_stop(1); ?> seconds" />
Das Ergebnis sieht dann folgend aus:
Was kann ich mit der Info nun anfangen?
Meistens machen Plugins eine WordPress-Webseite langsam. Deativiert man einzelne Plugins und vergleicht anschließend immer wieder die Anzahl Datenbankabfragen, erkennt man Plugin-Schwergewichte und kann Alternativen suchen. Ebenso verhält es sich mit Widgets, welche einer Seite performancetechnisch negativ zusetzen können.
Noch mehr Informationen kann man sich per Plugin ziehen: Das Plugin Debug Objects ist dafür sehr gut geeignet: https://wordpress.org/plugins/debug-objects/.
Fazit: Freilich sind nicht nur Datenbankabfragen zu prüfen, wenn eine WordPress-Webseite langsam ist. Wer nicht weiß, wie man weiter macht bei der Suche nach dem Flaschenhals, der fragt beim Profi nach.
Marco
Ich wusste bis jetzt garnicht, dass sich das so leicht leicht umsetzen lässt. Die Infos über Datenbankabfragen und Ladezeit sind letztendlich für so gut wie jedes Webprojekt interessant zu wissen, um entsprechend daran optimieren zu können. Super praktischer Tipp, Danke.
Moritz
Hallo,
vielen Dank für den guten Tipp! Dies muss ich gleich einbauen.
Übrigens: in der 1. Zeile nach dem Untertitel „Was kann ich mit der Info anfangen?“ ist ein kleiner Tippfehler. Da steht: „Deativiert man“.
Eine schöne Osterzeit!
Moritz