解决 WordPress 4.9 页面模板功能无法正常使用

2017年12月3日     tovey    

WordPress 4.9 有一个重要更新是:在WP后台编辑主题和插件文件时,支持按层级显示所有文件。为了性能考虑,使用了 transient 缓存机制。但是却没有提供任何手动清除缓存的功能,导致有些用户升级到 WordPress 4.9 以后,发现“页面属性 – 模板”这个功能不能正常使用了,不显示主题自带的模板文件!

解决 WordPress 4.9 页面模板功能无法正常使用

  1. /**
  2.  * Plugin name: WP Trac #42573: Fix for theme template file caching.
  3.  * Description: Flush the theme file cache each time the admin screens are loaded which uses the file list.
  4.  * Plugin URI: https://core.trac.wordpress.org/ticket/42573
  5.  * Author: Weston Ruter, XWP.
  6.  * Author URI: https://weston.ruter.net
  7.  */
  8. function wp_42573_fix_template_caching( WP_Screen $current_screen ) {
  9. // Only flush the file cache with each request to post list table, edit post screen, or theme editor.
  10. if ( ! in_array( $current_screen->base, array( ‘post’, ‘edit’, ‘theme-editor’ ), true ) ) {
  11. return;
  12.     }
  13. $theme = wp_get_theme();
  14. if ( ! $theme ) {
  15. return;
  16.     }
  17. $cache_hash = md5( $theme->get_theme_root() . ‘/’ . $theme->get_stylesheet() );
  18. $label = sanitize_key( ‘files_’ . $cache_hash . ‘-‘ . $theme->get( ‘Version’ ) );
  19. $transient_key = substr$label, 0, 29 ) . md5( $label );
  20.     delete_transient( $transient_key );
  21. }
  22. add_action( ‘current_screen’, ‘wp_42573_fix_template_caching’ );

如果你不想编辑代码,点击下载此插件安装启用即可:wp-42573

分类: wordpress教程
avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

分享到微信朋友圈

解决 WordPress 4.9 页面模板功能无法正常使用

打开微信,点击底部的“发现”
使用“扫一扫”即可将网页分享至朋友圈。

错误: 请输入一个有效的电子邮件地址

错误: 无效的邮箱

错误: 请输入您的姓氏

错误: 请输入你的名字

错误: 请输入用户名

错误: 请输入密码

错误: 请确认您的密码

错误: 密码和密码确认不匹配