Kennis
Redis object cache in WordPress: wat het doet en hoe je het instelt
Een Redis object cache bewaart databasegegevens van WordPress tussen verzoeken, zodat het beheer, de winkelwagen en ingelogde gebruikers minder op de database wachten. Voor anonieme bezoekers die al een pagina uit de paginacache krijgen, voegt hij weinig toe. Deze gids legt uit wat een object cache doet, wanneer WordPress er zelf een adviseert, hoe je Redis instelt, wat je zonder Redis kunt gebruiken en hoe Spark Speed, de cacheplugin die wij maken, ermee omgaat.
In het kort
- Een object cache versnelt alles wat door WordPress moet: beheer, winkelwagen, afrekenen, ingelogde gebruikers
- Naast een paginacache, niet in plaats daarvan
- De plugin alleen is niet genoeg: je host moet een Redis-server leveren
- Zonder Redis zijn Memcached, SQLite of bestanden een alternatief
Wat een object cache doet
WordPress bewaart de resultaten van databasevragen tijdens een verzoek in het geheugen. Na dat verzoek is alles weer weg. De documentatie van WordPress zegt het zo: gegevens blijven niet tussen paginaladingen bewaard, tenzij je een persistente cacheplugin installeert. Zo'n plugin plaatst het bestand object-cache.php in wp-content, en vanaf dan bewaart WordPress die gegevens in Redis, Memcached of een andere opslag, zodat het volgende verzoek ze niet opnieuw uit de database hoeft te halen.
Object cache of paginacache: wat versnelt wat
Een paginacache bewaart complete HTML en levert die aan anonieme bezoekers, vaak nog voordat WordPress opstart. Daar heeft een object cache weinig aan toe te voegen. Een object cache helpt juist bij alles wat wel door WordPress moet: het beheer, ingelogde gebruikers, winkelwagen, afrekenen en mijn-account in WooCommerce, zoekresultaten en het opnieuw opbouwen van de paginacache. Ze vullen elkaar aan; de een vervangt de ander niet.
Heb je hem nodig? Wat WordPress zelf adviseert
WordPress heeft in Sitestatus een controle op een persistente object cache. In de broncode van WordPress 7.0.2 adviseert die controle er pas een bij een multisite, of zodra een van deze drempels wordt overschreden. Een kleine brochuresite met een goede paginacache valt daar meestal onder.
- meer dan 500 automatisch geladen opties, of meer dan 100 kB daarvan
- meer dan 1.000 berichten, reacties, termen, gebruikers of opties
- de drempels zijn aan te passen met het filter
site_status_persistent_object_cache_thresholds
Redis instellen met de plugin Redis Object Cache
De plugin alleen is niet genoeg: er moet een Redis-server draaien die PHP kan bereiken. Op gedeelde hosting staat die er vaak niet, en dan kun je hem ook niet zelf starten. Vraag je host of Redis beschikbaar is en op welk adres. In ons lab draaide geen Redis-server: de plugin meldde Connection refused en hield de knop Enable Object Cache uitgeschakeld. Dat is een veilige keuze van de plugin.
- Vraag je host of Redis beschikbaar is, en op welk adres of socket
- Staat Redis niet op 127.0.0.1:6379, zet dan
WP_REDIS_HOSTenWP_REDIS_PORT(en zo nodigWP_REDIS_PASSWORD) in wp-config.php - Deel je Redis met meer sites, geef elke site dan een eigen
WP_REDIS_PREFIXof database: legen kan anders de hele Redis-database raken - Installeer Redis Object Cache, ga naar Instellingen, Redis en klik op Enable Object Cache
- Controleer met
wp redis status: Status moet Connected tonen

Alternatieven: Memcached, APCu, SQLite en bestanden
Geen Redis? Dan zijn er andere opslagplekken. Memcached werkt vergelijkbaar en zit bij sommige hosts standaard in het pakket. APCu bewaart in het geheugen van PHP zelf, maar per PHP-proces, waardoor WP-CLI en de webserver elkaars wijzigingen niet altijd zien. SQLite en bestanden hebben geen aparte server nodig en werken dus ook op eenvoudige hosting.
| Plugin | Opslag | Actieve installaties | Waardering | Laatste update | Minimaal PHP |
|---|---|---|---|---|---|
| Redis Object Cache | Redis-server nodig; PhpRedis, Predis of Relay | 500.000+ | 4,5 (179) | 18 sep 2026 | 7.2 |
| Docket Cache | Bewaart in PHP-bestanden, geen Redis nodig | 20.000+ | 4,9 (50) | 15 okt 2026 | 7.2.5 |
| SQLite Object Cache | Bewaart in een SQLite-bestand, geen Redis nodig | 10.000+ | 5,0 (51) | 17 aug 2026 | 5.6 |
Cijfers van wordpress.org, opgehaald op 16 oktober 2026. Installaties zijn de afgeronde aantallen die wordpress.org toont.
Zo werkt de object cache in Spark Speed
Spark Speed, de cacheplugin die wij maken, heeft een eigen object cache als schakelaar op het tabblad Cache. Wat je daarvan kunt verwachten, uit de code van versie 0.73.2 en onze handleiding:
- Spark kiest zelf de opslag die de server biedt, in deze volgorde: Redis, Memcached, SQLite en APCu. Een ingestelde
WP_REDIS_HOSTwint altijd. - Zonder
WP_REDIS_HOSTprobeert Spark 127.0.0.1:6379 en daarna de bekende Redis-socketpaden die op de server bestaan. - Staat er al een object-cache.php van een andere plugin, dan schrijft Spark daar niet overheen.
- Staat Redis op het beleid noeviction, dan waarschuwt Spark: Redis weigert dan nieuwe schrijfacties als het geheugen vol is, in plaats van oude sleutels op te ruimen.
- Paginacache en object cache hebben elk een eigen knop om te legen; de een leegt de ander niet.
- Levert je host al een object cache, laat de schakelaar in Spark dan uit.
Redis goed afstellen
Twee instellingen bepalen of Redis als cache goed blijft werken. Met maxmemory geef je Redis een geheugengrens. Met maxmemory-policy bepaal je wat er gebeurt als die grens bereikt is. De documentatie van Redis noemt allkeys-lru een goede standaard voor een cache: de minst recent gebruikte sleutels gaan eruit. Bij noeviction geeft Redis een fout op schrijfacties zodra het vol is. Op gedeelde of beheerde hosting stelt de host dit in; vraag het na als je twijfelt.
Controleren en legen
Of WordPress een persistente object cache gebruikt, zie je in Sitestatus en met WP-CLI. Na een wijziging die rechtstreeks in de database is gedaan, bijvoorbeeld een import of een SQL-query, leeg je de object cache, anders toont WordPress nog de oude waarde.
wp cache flushleegt de object cache (werkt met elke object-cacheplugin)wp redis statustoont status, client en drop-in van Redis Object Cachewp spark-speed flush-object-cacheleegt de object cache van Spark Speed- In Redis zelf geven
keyspace_hitsenkeyspace_missesuitINFO statsaan hoe vaak de cache raak is
Zet maar een object cache tegelijk aan. Twee plugins die allebei object-cache.php willen beheren, zitten elkaar in de weg.
Spark Speed combineert paginacache en object cache en kiest zelf de opslag die je server biedt.
Veelgestelde vragen
Vooral de delen die niet uit de paginacache komen: het beheer, de winkelwagen en afrekenen, ingelogde gebruikers en zoekresultaten. Pagina's die al uit de paginacache komen, worden er weinig sneller van.
Beide bewaren objectcachegegevens in het geheugen van een aparte server. Voor WordPress doen ze hetzelfde werk; welke je kiest, hangt vooral af van wat je host aanbiedt.
Alleen als je host Redis aanbiedt. Je kunt op gedeelde hosting meestal niet zelf een Redis-server starten. Zonder Redis kun je een object cache op SQLite of in bestanden gebruiken.
Met wp cache flush via WP-CLI, of met de knop van je object-cacheplugin. Doe dit na wijzigingen die rechtstreeks in de database zijn gedaan.