isotopsweden / wp-cachetop
此包已被废弃且不再维护。没有建议的替代包。
通过生成静态HTML并将它存储在Redis或文件系统中来缓存页面
dev-master
2016-08-15 13:43 UTC
Requires
- php: ^5.5.9 || ^7.0
- league/flysystem: ^1.0
- league/flysystem-cached-adapter: ^1.0
- predis/predis: ^1.0
Requires (Dev)
- frozzare/wp-test-suite: ^1.0
- isotopsweden/isotopcs: dev-master
This package is auto-updated.
Last update: 2023-03-01 00:24:42 UTC
README
需要PHP 5.5.9
缓存插件,创建可以存储在Redis或文件系统中的静态HTML文件。默认缓存时间为1小时。所有缓存的帖子都必须有缓存元键,_cachetop_hash
包含缓存哈希ID和_cachetop_time
包含帖子被缓存的日期和时间。
安装
composer require isotopsweden/wp-cachetop
解除碎片化
使用cachetop_unfragment( $fn, array $args = [] )
,你可以告诉Cachetop用给定函数或静态方法的输出替换缓存的HTML。
示例
<div class="widget_shopping_cart_content"> <?php cachetop_unfragment( 'woocommerce_mini_cart' ); ?> </div>
当Cachetop在用新鲜HTML替换缓存HTML时调用函数或静态方法时,会定义常量DOING_CACHETOP
。
不会缓存
- 登录用户(如果未通过过滤器更改)。
- 搜索页面。
- 404页面。
- 订阅页面。
- 引用页面。
- 机器人文件。
- 预览页面。
- 受密码保护的帖子。
- WooCommerce购物车页面。
- WooCommerce结账页面。
- WooCommerce账户页面。
- 仅GET请求,所以没有POST、PUT、PATCH、UPDATE、DELETE等。
- 没有带查询字符串的GET请求。
过滤器
- 使用
cachetop_options
来更改Cachetop选项,如将Redis更改为文件系统或设置过期时间。 cachetop_bypass
可以用来判断一个应该被缓存的页面是否应该被绕过。cachetop_exclude_url
可以用来排除URL,第一个参数是当前URL。cachetop_bypass_logged_in
可以用来判断登录用户是否应该被缓存,如果显示管理栏,这是不好的。
函数
cachetop_flush_hash( $hash )
可以通过哈希来刷新缓存。cachetop_flush_post( $post_id )
可以通过帖子ID来刷新帖子。cachetop_flush_url( $url = '' )
可以通过URL或当前URL来刷新缓存,查询字符串将被移除。
许可证
MIT © Isotop