»

如何禁止WP Rocket缓存插件自动清除缓存?

    WordPress网站建设  
Wp Super Cache网站优化WordPress插件服务器变量百度云加速缓存WP Rocketwindows主机腾讯云加速前端HTTP标头又拍云CDN伪静态IIShtaccess工作插件ApacheCDN科技数据库网络安全web.config七牛重定向

上一篇文章讲了WP Rocket缓存插件会自动清除缓存,感觉用了这个缓存插件之后,到处是地雷和各种机关,稍不注意就可能把以前缓存的文章给删了。这种效果对于那些八百年不更新旧文章的人来说,简直就是灾难啊!幸好WP Rocket插件的官方给出了解决办法,给出了一个叫 wp-rocket-no-cache-auto-purge 的插件,可以禁止WP Rocket自动删除缓存。

插件的主要代码如下所示:

  1. <?php  
  2. / ** 
  3.  * Plugin Name: WP Rocket | Disable Cache Clearing 
  4.  * Description: Disables all of WP Rocket’s automatic cache clearing. 
  5.  * Plugin URI:  https://github.com/wp-media/wp-rocket-helpers/tree/master/cache/wp-rocket-no-cache-auto-purge/ 
  6.  * Author: WP Rocket Support Team 
  7.  * Copyright SAS WP MEDIA 2018 
  8.  * /  
  9.   
  10. namespace WP_Rocket\Helpers\cache\no_cache_auto_purge;  
  11.   
  12. //Standard plugin security, keep this line in place.  
  13. defined( 'ABSPATH' ) or die();  
  14.   
  15. / ** 
  16.  * Remove all of WP Rocket’s cache purging actions. 
  17.  * 
  18.  * @author Caspar Hübinger 
  19.  * /  
  20. function remove_purge_hooks() {  
  21.   
  22.     //WP core action hooks rocket_clean_domain() gets hooked into.  
  23.     $clean_domain_hooks = array(  
  24.         //When user changes the theme  
  25.         'switch_theme',  
  26.         //When a user is added  
  27.         'user_register',  
  28.         //When a user is updated  
  29.         'profile_update',  
  30.         //When a user is deleted  
  31.         'deleted_user',  
  32.         //When a custom menu is updated  
  33.         'wp_update_nav_menu',  
  34.         //When any theme modifications are updated  
  35.         'update_option_theme_mods_' . get_option( 'stylesheet' ),  
  36.         //When you change the order of widgets  
  37.         'update_option_sidebars_widgets',  
  38.         //When category permalink prefix is update  
  39.         'update_option_category_base',  
  40.         //When tag permalink prefix is update  
  41.         'update_option_tag_base',  
  42.         //When permalink structure is update  
  43.         'permalink_structure_changed',  
  44.         //When a term is created  
  45.         'create_term',  
  46.         //When a term is updated  
  47.         'edited_terms',  
  48.         //When a term is deleted  
  49.         'delete_term',  
  50.         //When a link (post type) is added  
  51.         'add_link',  
  52.         //When a link (post type) is updated  
  53.         'edit_link',  
  54.         //When a link (post type) is deleted  
  55.         'delete_link',  
  56.         //When resulty are saved in the Customizer  
  57.         'customize_save',  
  58.         //When Avada theme purges its own cache  
  59.         'avada_clear_dynamic_css_cache',  
  60.     );  
  61.   
  62.     //WP core action hooks rocket_clean_post() gets hooked into.  
  63.     $clean_post_hooks = array(  
  64.         //Disables the refreshing of partial cache when content is edited  
  65.         'wp_trash_post',  
  66.         'delete_post',  
  67.         'clean_post_cache',  
  68.         'wp_update_comment_count',  
  69.     );  
  70.   
  71.     //Remove rocket_clean_domain() from core action hooks.  
  72.     foreach ( $clean_domain_hooks as $key => $handle ) {  
  73.         remove_action( $handle, 'rocket_clean_domain' );  
  74.     }  
  75.   
  76.     //Remove rocket_clean_post() from core action hooks.  
  77.     foreach ( $clean_post_hooks as $key => $handle ) {  
  78.         remove_action( $handle, 'rocket_clean_post' );  
  79.     }  
  80.   
  81.     remove_filter( 'widget_update_callback' , 'rocket_widget_update_callback' );  
  82. }  
  83. add_action( 'wp_rocket_loaded', __NAMESPACE__ . '\remove_purge_hooks' );  

 

需要下载的朋友可以从此处下载WP-ROCKET插件(更新至3.11.2版本) 以及 wp-rocket-no-cache-auto-purge 插件: 百度网盘 提取码: n5vp 

安装方法与其他WordPress插件无异。

时光在路上扫码阅读、分享
  • 版权声明:该文章由 时光在路上 发表,共 3152字。除非特别标注来源,否则为原创。详见《版权声明》部分。
  • 转载请注明:文章标题和文章链接 - 时光在路上 - 也可直接“复制本文链接” 或 使用右边二维码分享本文 →