WP Rocket: Die Rakete unter den WordPress-Caching-Plugins

Jede WordPress-Website stößt früher oder später an ihre Leistungsgrenze. Bei WordPress handelt es sich bekanntlich um ein dynamisches System zur Generierung von HTML (CMS). Das heißt, bei jedem Aufruf werden im Hintergrund auf dem Server diverse Skripte geladen und durch den PHP-Interpreter geschickt. Dabei werden Tausende von Berechnungen durchgeführt und auch Daten aus der Datenbank geladen. Schlussendlich wird das Ergebnis „zusammengebaut“ und an den Browser zurückgegeben.

Je nach Server-Hardware, Hosting-Situation, Anzahl der Plugins oder Umfang der Seiteninhalte kann dieser Vorgang mehrere Sekunden dauern. Falls der Besucher über eine langsame Verbindung verfügt, kann es sein, dass die „Zeit bis zum Anzeigen der Seite“ 5 Sekunden oder länger beträgt. Das ist inakzeptabel, weil es dazu führt, dass diese Besucher eine andere Website ansteuern. Bei Wartezeiten von deutlich über 1 bis 3 Sekunden stellt sich das Gefühl ein, die Webseite sei aktuell nicht erreichbar.

Zum Glück gibt es für WordPress eine ganze Reihe sogenannter Caching-Plugins, die genau dieses Problem beseitigen können. Gemein haben alle, dass sie kompliziert einzustellen sind. Auch müssen sie zuerst konfiguriert und dann aktiviert werden. Nicht so WP Rocket: Es ist direkt nach der Installation aktiviert und beschleunigt die Ladezeiten enorm. Darüber hinaus kann es in diversen Bereichen weiter optimiert werden.

In diesem Beitrag fassen wir nochmals alle wichtigen Informationen rund um die Installation und den Betrieb bzw. die Optimierung von WP Rocket zusammen.

Die Features: Was hat WP Rocket alles zu bieten?

Zum Ersten hat WP Rocket eine große Nutzerbasis. Mit mehr als 1 Millionen Nutzern weltweit wird die Software von sehr vielen WordPress-Usern verwendet. Das gibt einem schon mal die Sicherheit, dass auch in Zukunft an diesem Plugin gearbeitet wird und Fehler schnell erkannt und behoben werden. Die Bewertungen im Netzt sind dadurch nicht ohne Grund überdurchschnittlich gut.

Neben der Standardfunktionalität des Page-Cachings kann WP Rocket auch den kompletten Cache der Website voranfertigen, statische Dateien (vor)komprimieren, Bilder werden erst geladen, wenn der Besucher auf der Seite an die entsprechende Position scrollt (Lazy Loading) und der Support für Entwickler lässt sich auch sehen. Es ist also spannend, sich das Plugin mal im Detail anzuschauen.

Anleitung: Installation und fertig?

Nach einer Standard-Installation unter WordPress Version 5.4 ist WP Rocket direkt einsatzbereit, d. h. schon ohne weitere Konfiguration werden Beiträge und Seiten gecacht. Die Ladezeiten auf der Website werden direkt beschleunigt.

Aber es geht noch mehr. Am besten lässt sich die Power von WP Rocket demonstrieren, wenn wir einfach von Menüpunkt zu Menüpunkt durch das Backend gehen. Zu Testzwecken haben wir bei WordPress eine ganze Reihe an Beispiel-Seiten und -Beiträgen angelegt.

Diese Beispielseiten haben unterschiedliche Layoutelemente und Bilder. Hier in der Querdarstellung (ein langer Screenshot geschnitten und nebeneinander dargestellt).

Das Dashboard von WP Rocket

Direkt nach der Installation landete man im Dashboard. Hier gibt es einen Überblick über die wichtigsten Informationen, und auch die Möglichkeit den Cache zu leeren bzw. zu füllen. Wer möchte, kann auch am Betatestprogramm teilnehmen.

Der Cache in WP Rocket

Im Bereich Cache gibt es die Möglichkeit den Cache für mobile Geräte zu aktivieren. Ein separater Cache für mobile Geräte könnte dann erforderlich sein, falls das eingesetzte Theme noch nicht responsiv ist und für mobile Geräte ein eigenes Layout generiert. Das Caching lässt sich auch für angemeldete WordPress-Benutzer aktivieren. Grundsätzlich ist das aber nicht zu empfehlen. Eine bessere Lösung ist es, ein weiteres Browser-Fenster im Inkognito-Modus zu öffnen, um zu überprüfen, ob das Caching tatsächlich funktioniert. Im Video haben wir das auch überprüft.

Unter Cachedauer lässt sich die Zeit einstellen, bis zu der der Cache invalidiert wird. Wie im Screenshot angezeigt, wird in diesem Fall nach 10 Stunden der Cache neu aufgebaut.

Datei-Optimierung mit WP Rocket

Dieser Bereich bietet eine Fülle von Optionen. Zuallererst lässt sich das HTML minifizieren. Der HTML-Code wird so weit wie möglich verkleinert. Unnötige Leerzeichen, Leerzeilen und Kommentare müssen dran glauben.

Der Einsatz von Google-Fonts kann zu einer Verlangsamung der Ladezeiten führen. Gerade dann, wenn mehr als eine Schriftart verwendet wird. Hier schreibt das Plugin den Code so um, dass nur noch eine Anfrage an die Google Server gesendet wird. Außerdem hängt das Plugin den Parameter display=swap an die Anfrage an. Zu guter Letzt wird auch noch das Attribut rel=preconnect ergänzt.

Beim Laden von statischen Ressourcen werden von Entwicklern gerne Query-Strings an die Datei angehangen. Das sieht zum Beispiel so aus: style.css?ver=1.0. WP Rocket schreibt den Dateinamen dann in ein anderes Format um: style-1-0.css. Das ist schlau, denn so lässt sich kategorisch ausschließen, dass alter Layoutanweisungen geladen werden.

Neben dem HTML lassen sich auch die CSS- und JS-Dateien minifizieren, zusammenfassen und optimieren. Die Minifikation entfernt wie immer Leerzeichen, Leerzeilen und Kommentare. Die Zusammenfassung macht aus vielen verschiedenen Dateien eine einzige. So muss der Browser nur noch eine größere Datei laden, was schneller geht.

Sowohl CSS wie auch JS können bei ungünstiger Umsetzung verhindern, dass eine Seite so schnell wie möglich angezeigt wird. Hier lohnt sich auf jeden Fall ein Test, um auszuprobieren, ob diese Einstellung das Anzeigen der Seite tatsächlich beschleunigt. Ob das mit dem reinen Auge noch wahrzunehmen ist, sei aber dahingestellt. Hierzu muss man sich wahrscheinlich der Tools bemühen.

Kleiner Exkurs: Analyse mit Google Lighthouse

Mit Google Lighthouse bietet der Chrome-Browser eine einfache Möglichkeit, um zu testen, ob eine Einstellung tatsächlich etwas gebracht hat. Hierzu ruft man in Chrome die Entwicklertools (Windows: STRG+Umschalt+I | Mac Command+i) auf.

Dann auf den Reiter „Audits“ wechseln und den Button „Generate Report“ klicken. Natürlich vorher im Inkognito-Modus auf die zu testende Seite gehen.

Der erste Test zeigt die Ergebnisse der ungecachten Version, weil noch nicht im Inkognito-Modus aufgerufen.

Für den zweiten Test ist das Caching aktiviert. Außerdem erlaubt die Zahl „First Contentful Paint“ (hier: 2,6 Sekunden) eine Aussage darüber, ob die Einstellungen zu Rendering-blockierendes CSS bzw. JS etwas gebracht haben. War die Zahl vorher deutlich höher? So lässt sich überprüfen, ob Einstellungen bei WP Rocket helfen oder nicht.

Exkurs Ende

„Remove jQuery Migrate“ braucht man heutzutage nur noch, wenn es viele Website-Besucher gibt, die noch sehr alte Browser einsetzen und jQuery immer noch eingesetzt wird. Ob das der Fall ist, lässt sich durch einen Blick in das eigene Google Analytics herausfinden.

Medienoptimierung mit WP Rocket

Im Bereich Medien gibt es eine Menge Einstellungen für Bilder, Videos und andere Elemente. Lazy Loading ist im Prinzip immer zu empfehlen. Denn das bedeutet, dass Bilder auf der Seite erst dann geladen werden, wenn sie durch Scrollen in den sichtbaren Bereich gelangen. Gerade bei Seiten, auf denen es sehr viele Bilder gibt, wie zum Beispiel auf dieser Seite hier, lohnt sich das wirklich. Noch mehr sogar, auf Seiten mit vielen Videos. Eine Seite mit zehn YouTube-Videos beginnt beim Aufruf zehn Videos gleichzeitig zu laden. Dies verhindert ein Klick auf „YouTube iFrame durch Vorschaubild ersetzen“.

Emojis und Embeds sollten standardmäßig auch besser deaktiviert sein. Falls möglich, sollte die WordPress-Installation auch so konfiguriert sein, dass sie das Bildformat WebP von Google unterstützt. WebP erzeugt bei gleicher Qualität oft kleinere Dateien als JPEG.

Den Cache füllen lassen

Ein interessantes Feature von WP Rocket ist das Active Preloading. Sobald der Cache verfällt, muss er erst wieder aufgefüllt werden. Sollte gerade zu diesem Zeitpunkt der Google-Bot vorbeikommen und alle Seiten auf einmal (oder kurz hintereinander) crawlen wollen, kann die Website-Performance nicht optimal sein. Das Active Preloading erledigt das im Hintergrund. Idealerweise hinterlegt man eine Sitemap für die zu cachenden URLs. Dann wird das Active Preloading proaktiv und baut immer einen frischen Cache auf. Der Nachteil: Wer öfters über den Tag Änderungen vornimmt, löst immer wieder einen neuen, kompletten Cachingvorgang aus. Bei ein paar Hundert Beiträgen vielleicht noch kein Problem. Bei mehreren Tausend jedoch schon. Der Einsatz will gut überlegt sein.

Die Funktion DNS-Prefetch verursacht, dass bestimmte URLs bereits im Hintergrund voraufgelöst werden. Die IP-Adresse der URL wird vorab ermittelt, was gerade bei mobilen Netzwerkverbindungen zu einem kleinen Geschwindigkeitsboost führen kann. Wer das nutzen möchte, trägt jede Zeile externer Domains ein, mit einem doppelten Slash (//) vorne. Der Google-Fonts-Server wäre hier ein gutes Beispiel: //fonts.gstatic.com.

Erweiterte Regeln

Jede Konfiguration braucht ihre Ausnahmen. Daher kann man in diesem Bereich hinterlegen, in welchen Fällen Seiten nicht gecacht werden sollen – für bestimmte URLs, Cookies oder User-Agents.

Manchmal gibt es URLs, die außerhalb von WordPress ihren Cache erzeugen. Diese dann im Bereich „immer löschen“ eintragen.

Normalerweise legt WP Rocket für URLs mit Query-Strings keinen Cache an. Wenn es das doch tun soll, lassen sich solche Parameter unter „Cache für Query-Strings“ angeben. In der Dokumentation gibt es auch ein Beispiel dafür: example.com/page/?country=italy.

Datenbankoptimierungen mit WP Rocket

Vor Änderungen an der Datenbank bitte immer ein Backup anlegen! Danach kann die Datenbank um diverse eventuell unnötige Einträge erleichtert werden. Allerdings sollte man sicher sein, nicht etwas zu löschen, das man später noch braucht. Gerade die Revisionen bei den Beiträgen und Seiten könnten noch mal nützlich werden. Auch sehen wir hier keine besonders gute Möglichkeit, die Performance zu optimieren. Außer es gibt in der Datenbank mittlerweile Tausende von Revisionen, die sich im Laufe der Monate und Jahre angesammelt haben. Das Feature ist also eher etwas für sehr aktive Publikation.

Ein CDN (Content-Delivery-Netzwerk) verwenden

Ein Content-Delivery-Network ist ursprünglich dazu gedacht, ein internationales Netzwerk von gecachten Seiten anzubieten, sodass unabhängig von wo ein Besucher eine Seite aufruft, diese immer so schnell wie möglich ausgeliefert werden kann. So kann beispielsweise ein Kunde, der sich aktuell im Urlaub in Australien befindet, genauso schnell auf einer deutschen Website surfen, ohne tatsächlich in Deutschland zu sein. Wer internationalen Traffic erwartet, der sollte sich schlaumachen.

Für die beliebten Dienste von Cloudflare und Sucuri gibt es jedoch eigene Add-ons. Diese also bitte nicht auf dieser Seite konfigurieren.

Die Heartbeat-Frequenz einstellen

WordPress nutzt im Hintergrund ein Protokoll namens Heartbeat. Dieses Protokoll kommuniziert fortlaufend mit dem Server, um diverse Arbeiten zu erledigen, zum Beispiel auch um das automatische Speichern zu ermöglichen. Je nach Server-Kapazitäten kann dies zu einer Verlangsamung führen. In der Regel aber nur bei Shared-Hosting-Anbietern, bei denen sich mehrere Nutzer eine Serverinstanz teilen. Es empfiehlt sich, diese Funktion auszuprobieren, wenn die Ressourcen knapp werden. Mit anderen Worten: Wenn du schon den Heartbeat unterbinden musst, dann überlege einmal, ob es nicht sinnvoller ist, den Hostingsanbieter zu wechseln, einen schnelleren Server zu buchen.

Add-ons für WP Rocket nutzen

WP Rocket kommt außerdem mit diversen Add-ons. Es lohnt sich vor allem die Skripte von Google Analytics und das Facebook Pixel lokal zu speichern. Der Varnish-Cache ist nur etwas für absolute Spezialisten bzw. für Leute, die auf dem Server schon Varnish vorinstalliert haben.

Weitere Werkzeuge in WP Rocket

In diesem Bereich lassen sich Einstellungen exportieren, importieren und auf eine ehemalige Version downgraden.

Kostenlose Tutorials zu WP Rocket

WP Rocket verfügt über diverse hochgradig produzierte Videotutorials (auf Englisch), die einige der Features und Möglichkeiten deutlich vertiefen. Diese sind auch auf der Website kostenlos abrufbar.

Fazit: Ist WP Rocket richtig für deine WordPress-Website?

Ein Caching-Plugin ist für jede Website zu empfehlen, die plant ihren Traffic immer weiter auszubauen. Ein älterer oder nicht gerade gut dimensionierter Server kann schnell in die Knie gehen, wenn zu viele Nutzer gleichzeitig auf diesen zugreifen. Richtig eingestelltes Caching kann die Performance deiner Website verhundert- oder vertausendfachen.

Nach allem, was wir bis jetzt über WP Rocket herausgefunden haben, vor allem in unseren eigenen Tests, können wir dir dieses Plugin wirklich ans Herz legen. Es ist für ein Caching-Plugin einfach zu konfigurieren, hocheffizient, raketenschnell und auch noch bezahlbar.

Über unseren Link hier kannst du es direkt ausprobieren.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.