WordPress hat bereits einen Objekt-Cache: Während eine Seite geladen wird, hält es die aus der Datenbank gelesenen Optionen, Beiträge und Metadaten im Speicher, um sie nicht erneut abzufragen. Die WordPress-Dokumentation stellt aber klar: Standardmäßig ist dieser Cache nicht persistent. Am Ende der Anfrage ist alles weg, und die nächste Seite stellt dieselben Abfragen erneut an MySQL oder MariaDB. Redis und Memcached machen diesen Cache persistent.
So funktioniert der persistente Objekt-Cache
Der Trick steckt in einer einzigen Datei: object-cache.php im Ordner wp-content. Es handelt sich um ein „Drop-in“, das WordPress beim Start automatisch lädt und das den Standard-Cache ersetzt. Objekt-Cache-Plugins installieren diese Datei, die die Funktionen wp_cache_get() und wp_cache_set() an einen Redis- oder Memcached-Server umleitet.

Nicht zu verwechseln mit der Konstante WP_CACHE, die ein anderes Drop-in aktiviert, advanced-cache.php, das von Seiten-Cache-Plugins genutzt wird. Der Seiten-Cache erspart die PHP-Ausführung für ganze Seiten; der Objekt-Cache beschleunigt die Seiten, die dynamisch bleiben müssen: Admin-Bereich, Warenkorb, Kundenkonto, Suche. OPcache wiederum setzt auf einer ganz anderen Ebene an, bei der Kompilierung des PHP-Codes.
Seit WordPress 6.1 enthält das Werkzeug „Website-Zustand“ einen Test, der anzeigt, ob sich ein persistenter Objekt-Cache lohnen würde, abhängig von der Zahl der Optionen, Beiträge oder Benutzer der Website.
Redis oder Memcached?
- Memcached beschreibt sich als verteiltes, leistungsstarkes In-Memory-Caching-System für Objekte. Es ist ein einfacher Key-Value-Speicher, der standardmäßig die am längsten nicht genutzten Einträge verdrängt (LRU); seine Server wissen nichts voneinander, ein zusätzlicher Server bringt einfach mehr Speicher.
- Redis ist ein In-Memory-Speicher für Datenstrukturen, der als Cache, Datenbank oder Message Broker dienen kann. Er kann seine Daten auf die Festplatte schreiben (RDB-Snapshots, AOF-Protokoll) oder darauf verzichten, was seine Dokumentation als üblichen Einsatz für einen Cache beschreibt.
Für WordPress taugen beide. Redis wird wegen seiner zusätzlichen Funktionen oft bevorzugt, doch der Gewinn hängt vor allem davon ab, wie nah Cache-Server und Website beieinander liegen.
Für WordPress
- Prüfe die Verfügbarkeit: Beim Cloud-Hosting, auf einem VPS oder bei einem Tarif, der es enthält, startet der Hoster oder du selbst den Dienst; die passende PHP-Erweiterung (redis oder memcached) muss installiert sein.
- Installiere ein Objekt-Cache-Plugin, zum Beispiel Redis Object Cache, das PhpRedis, Predis und Relay unterstützt und WP-CLI-Befehle wie
wp redis statusmitbringt. Auch das Plugin LiteSpeed Cache kann Redis und Memcached nutzen, auf jedem Webserver. - Ein Präfix pro Website, wenn sich mehrere WordPress-Installationen denselben Redis teilen, sonst vermischen sich ihre Daten.
- Nicht im Internet erreichbar machen: Redis und Memcached sollten nur lokal oder in einem privaten Netz lauschen, mit Authentifizierung, wo sie verfügbar ist.
Nach einer Änderung der Einstellungen leert WP Masquerade die Seiten-Caches, die es erkennt; die Seite Kompatibilität mit Hostern und Caches nennt sie.
Häufige Fehler
Einen Objekt-Cache auf einer kleinen Website aktivieren, ohne die Wirkung zu messen, vergessen, dass ein voller oder gestoppter Cache Verzögerungen verursachen kann, oder zwei Plugins installieren, die sich um die Datei object-cache.php streiten. Verhält sich die Website nach einem Umzug seltsam, leere den Objekt-Cache: Er kann noch alte Adressen oder alte Einstellungen enthalten.