It looks like when you have template caching on, a page gets cached after it's visited. Then subsequent visits are served from cache.

When something triggers the cache to empty, such as an entry being edited, the "user visiting the page for it to cache" process starts again.

But my non-cached page speed is around 3 seconds, and I'd rather avoid anybody hitting this. Is there any way to load pages into cache en masse? If not, maybe a server script that gets all pages via cURL might work?

1 Answer 1


You can achieve this using CE Cache; however, the add-on hasn't been updated since EE 3 (it works with EE 4 and 5 though). This allows you have to have cache tags and cache breaking set-up, with the option to warm cache after a cache item has been deleted.

If you don't want to use that add-on, you'll have to make your own cache warming extension. However, this is only an easy solution if you're using the Pages module or the Structure add-on and any particular entry has specific related URL. Anything past that, and you'll be writing site specific rules for your channel entries/routes in your extension. The EE native caching might have a table that lists URI routes for cache items, and you could tap into that probably.

And if you implement some form of cache warming yourself, please remember to stagger your cURL requests, otherwise you can practically DOS your own site.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.