您的位置:首页 > 其它

为wordpress收费主题添加在线升级功能

2013-10-02 10:10 711 查看
以前小V在帮可以开发wordpress主题的时候经常会遇到客户问主题什么时候会更新、升级。其实小V最头痛这类问题了,因为小V也不知道什么时候会更新主题,而且也不好叫客户实时关注主题的更新动态所以小V一时也回答不上。想让wordpress自动提示主题有更新吧,又要把主题提交到wordpress官网才可以实现在线提示更新的功能,但是收费主题又不好直接提交到wordpress官网,前一阵子看到老外写的一篇文章:Automatic Updates For Private And Commercial Themes 说的就是如何为商业wordpress模板添加一个在线升级与版本更新提示。
一、创建一个带有wordpress主题版本信息的info.json文件并放入主题根目录:
{
  "version" : "2.0",
  "details_url" : "http://www.v7v3.com/wpjiaocheng/201310314.html", 
  "download_url" : "http://www.v7v3.com/wpjiaocheng/201310314.zip"
}
二、在网站根目录下新建一个themes-updates.json文件:
{
  "version" : "2.0",
  "details_url" : "http://www.v7v3.com/wpjiaocheng/201310314.html", 
  "download_url" : "http://www.v7v3.com/wpjiaocheng/201310314.zip"
}
参数说明下:
version:后面的那个2.0就是你主题的版本,比如你第一次发布出去的时候你可以写为1.0; details_url:后面的参数就是你现在这个主题的详细页面,一般你发布主题的时候都是有个详细的页面来介绍这个主题吧?那就填那个主题详细页的URL地址; download_url: 后面的参数就是你发布主题下载的那个链接地址,也就是说用户要是能找你这个地址的话,直接复制到浏览器就可以下载,这个参数是可选的,你可以留空,不过要 是留空的话就不能增加类似官网的那个点击之后自动更新的功能了。你每次有新的功能更新的话只需要修改version后面的参数后,使用你主题的用户就可以 看到新的提醒了。 三、给你的主题添加远程检测是否有新版本发布的功能
将下载的文件解压,把里面的theme-updates文件夹放到主题根目录,然后给主题文件functions.php添加以下代码:
//初始化更新检测.
require 'theme-updates/theme-update-checker.php';
$example_update_checker = new ThemeUpdateChecker(
    'example-theme',
    'http://www.v7v3.com/themes-updates.json'
);
说明下: example-theme 主题的名称,也就是在主题文件夹(/wp-content/themes)下面的名字,比如安装你主题后的文件路径是/wp-content /themes/my-theme/,那么,第一个参数就不再是xample-theme而是my-theme了。 到此,你的主题就支持自动更新的功能了,只要用户在使用你的主题,系统就会没12小时自动检查一次的。
补充:大概的说下theme-update-checker.php类
1.初始化函数:__construct(‘主题名字’,'主题参数的URL地址’,'是否自动更新,默认是’)
2.检测是否有更新的函数的函数:checkForUpdates()
这个可以手动的调用
3.从主题参数的URL地址获取主题的信息:requestUpdate()
4.删除主题储存信息:deleteStoredData()
这个函数对你的主题有安装和卸载功能的,在安装和卸载的代码时候可以调用下。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: