WordPress 主题更新提示实现方法
发布:smiling 来源: PHP粉丝网 添加日期:2014-06-20 15:55:29 浏览: 评论:0
之前我曾经转载过一个类似的功能,但太复杂了,而且不是很实用,于是还是自己写了一个,支持远程文件的缓存,避免对速度的影响.
首先你要准备一个 JSON 文件,放到你的网站目录里,JSON 文件内容例子,代码如下:
{"Version":"1.0","text":"<p>这是要给用户说的话</p>"}
注意,一个值是最新主题的版本,版本是自动和当前用户主题的 style.css 里的版本进行对比,如果用户的主题不是最新版本就在后台的顶部显示第二个属性的内容,然后在 functions.php 里放下边的代码:
- $theme_update_json = 'http://www.phpfensi.com /update.json';//注意你的地址
- define( 'theme_update_json', $theme_update_json );
- $themefolder = strtolower( wp_get_theme() );
- define( 'theme_folder', $themefolder );
- $theme_update_json_path = TEMPLATEPATH . '/update.json';
- define( 'theme_update_json_path', $theme_update_json_path );
- function Bing_get_update_json(){
- $fp = @file_get_contents( theme_update_json, 'r' );
- if( !$fp ) return;
- file_put_contents( theme_update_json_path, $fp );
- }
- add_action( 'theme_' . theme_folder . '_update', 'Bing_get_update_json' );
- function Bing_theme_version_compare(){
- global $update_json;
- if( !file_exists( theme_update_json_path ) ) return false;
- $theme_data = wp_get_theme();
- $update_json = @file_get_contents( theme_update_json_path, 'r' );
- $update_json = json_decode( $update_json, true );
- if( version_compare( $update_json['Version'], $theme_data['Version'], '>' ) ) return true;
- return false;
- }
- function Bing_update_schedule_event(){
- global $pagenow;
- if( $pagenow == 'themes.php' && isset( $_GET['activated'] ) && !wp_next_scheduled( 'theme_' . theme_folder . '_update' ) ) wp_schedule_event( current_time( 'timestamp' ), 'daily', 'theme_' . theme_folder . '_update' );
- }
- add_action( 'load-themes.php', 'Bing_update_schedule_event' );
- function Bing_notices_update(){
- if( !Bing_theme_version_compare() ) return;
- global $update_json;
- echo '<div id="message" class="updated fade">' . $update_json['text'] . '</div>';
- }
- add_action( 'admin_notices', 'Bing_notices_update' );
注意修改成你的 JSON 文件地址,每一天去服务器下载一次你的最新 JSON 文件保存到本地.
Tags: WordPress 主题更新提示
相关文章
- ·WordPress初级教程1:什么是博客?(2013-11-11)
- ·WordPress初级教程-2: 什么是WordPress?(2013-11-11)
- ·WordPress初级教程-3: WordPress的功能和特点(2013-11-11)
- ·WordPress初级教程-4: 选择WordPress博客的主机和域名(2013-11-11)
- ·WordPress初级教程-5: 安装WordPress(2013-11-11)
- ·WordPress初级教程-6: 本地安装WordPress(2013-11-11)
- ·WordPress初级教程-7: 一个数据库中安装多个WordPress博客(2013-11-11)
- ·WordPress初级教程-8: WordPress控制面板/ Dashboard(2013-11-11)
- ·WordPress初级教程-9: WordPress用户设置/ Users(2013-11-11)
- ·WordPress初级教程-10: WordPress博客配置/ Settings(2013-11-11)
- ·关于wordpress上传图片不显示的原因(2013-11-11)
- ·WordPress程序的脆弱点你知道吗 (2013-11-11)
- ·总结八大Wordpress网站百度收录实现秒收的方法绝招 (2013-11-11)
- ·WordPress如何网站投稿者也可以上传图片(2014-03-18)
- ·WordPress怎么修改新用户注册邮件内容(2014-03-18)
- ·WordPress怎么添加前台注册功能(2014-03-18)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)