hellobetter / silverstripe-cache
为 Silverstripe 提供简单、有效的缓存
dev-master
2023-12-31 23:12 UTC
Requires
- silverstripe/recipe-cms: ^5.0
This package is auto-updated.
Last update: 2024-08-30 01:07:22 UTC
README
为 Silverstripe 5 网站提供即时构建的缓存。
虽然独立构建,但基于 Damian Mooyman 的动态缓存模块。
要求
- Silverstripe 5+
配置
默认情况下通过安装模块启用请求缓存。
您可以添加一系列配置来编程缓存逻辑。
---
Name: custom_cache
After: '*'
---
HelloBetter\Cache\Handler\CacheHandler:
extensions:
- MyProject\Extension\CacheCustomisation # Build your own logic for caching
ignoredClasses:
- MyProject\MyPage\Page # ignore any pages here
ignoredPatterns: '/(^\/admin)|(^\/test)|(^\/dev($|\/))|(\/[A-Z])/'
配置
- enabled - 启用或禁用缓存
- ignoredClasses - 忽略的页面或控制器
- ignoredPatterns - 忽略任何 URL 模式
- cache_ajax - 将 AJAX 请求设置为可缓存。
使用 Cacheable
接口构建自定义 PHP 逻辑
use HelloBetter\Cache\Interface\Cacheable;
use SilverStripe\Core\Extension;
class CacheCustomisation extends Extention implment Cacheable
{
public function updateEnabled(bool &$enabled, HTTPRequest $request) : void
{
// your custom logic here.
}
public function updateKeyFragments(array &$fragments) : void
{
// your cache fragment updates here
}
}