WireCacheFilesystem by Ryan Cramer

ProcessWire WireCache module that replaces the default cache handler with a file system based cache.

WireCache Filesystem

ProcessWire WireCache module that replaces the default cache handler with a file system based cache.

This module requires ProcessWire 3.0.218 or newer. Do not attempt to install it on prior versions as the necessary interfaces do not exist prior to 3.0.218.

To use this module, you don't need to do anything other than install it. Once installed, it takes over the cache storage for the $cache API variable, moving it to the file system. When you uninstall the module, cache storage moves back to the database.

Depending on the environment, the file system based cache may be potentially faster than the database cache in some instances (such as reads), or slower in others (such as writes).

This module stores cache files in the following directory: /site/assets/cache/WireCache/

This module is also meant as an example implementation of the WireCacheInterface for other modules. The core /wire/core/WireCacheDatabase.php is also a good one to look at since a lot of the code in this Filesystem module ends up being file-system related, and WireCacheDatabase may be a little simpler in communicating some parts.

Installation

  • Copy the module files into /site/modules/WireCacheFilesystem/
  • In your admin, go to Modules > Refresh.
  • Click "install" for this module.
  • That's it.

Getting and saving caches

Please see the $cache API variable for details on getting and saving caches.

Clearing the cache

It is okay to delete the /site/assets/cache/WireCache/ directory as this module will re-create it automatically. Other than that, you can also always use the $cache->deleteAll() core API method to clear the cache.


Copyright 2023 by Ryan Cramer Design, LLC / ProcessWire

Install and use modules at your own risk. Always have a site and database backup before installing new modules.

Latest news

  • ProcessWire Weekly #558
    In the 558th issue of ProcessWire Weekly we'll check out the blog post that introduces ProcessWire 3.0.244, share some recent ProcessWire highlights, and more. Read on!
    Weekly.pw / 18 January 2025
  • ProcessWire 3.0.244 new main/master version
    ProcessWire 3.0.244 is our newest main/master/stable version. It's been more than a year in the making and is packed with tons of new features, issue fixes, optimizations and more. This post covers all the details.
    Blog / 18 January 2025
  • Subscribe to weekly ProcessWire news

“Yesterday I sent the client a short documentation for their ProcessWire-powered website. Today all features already used with no questions. #cmsdoneright—Marc Hinse, Web designer/developer