isotopsweden/wp-cachetop

此包已被废弃且不再维护。没有建议的替代包。

通过生成静态HTML并将它存储在Redis或文件系统中来缓存页面

安装: 5

依赖项: 0

建议者: 0

安全性: 0

星星: 2

关注者: 2

分支: 0

开放问题: 1

类型:wordpress-plugin

dev-master 2016-08-15 13:43 UTC

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