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 #523
    In the 523rd issue of ProcessWire Weekly we'll check out what's new in the core this week, share some new module related news, and more. Read on!
    Weekly.pw / 18 May 2024
  • ProFields Table Field with Actions support
    This week we have some updates for the ProFields table field (FieldtypeTable). These updates are primarily focused on adding new tools for the editor to facilitate input and management of content in a table field.
    Blog / 12 April 2024
  • Subscribe to weekly ProcessWire news

“ProcessWire is like a breath of fresh air. So powerful yet simple to build with and customise, and web editors love it too.” —Margaret Chatwin, Web developer