當前位置:首頁>WordPress建站>WordPress開發(fā)>WordPress插件開發(fā) 之 添加自動檢測更新和一鍵升級功能

WordPress插件開發(fā) 之 添加自動檢測更新和一鍵升級功能

倡萌昨天分享了 WordPress主題制作 之 添加自動檢測更新和一鍵升級功能 ,那么對于插件,能否實現(xiàn)插件的自動在線檢測更新和一鍵升級呢?其實也是可以的,當然了,如果你將插件提交到WordPress官方,那就沒必要看文本的折騰了。如果你開發(fā)的是收費插件,不打算提交到WordPress官方,那你就很有必要給你的插件添加檢測和一鍵升級的功能了。 該方法同樣來自于 w-shadow.com ,倡萌測試成功,下面根據(jù)自己的理解寫個過程。

設置遠程服務和添加插件檢測功能

1.下載所需文件:

  • Client library (要求 PHP5 和 WP 3.0 以上)
  • Example plugin
  • Example metadata file (右鍵另存為)

下載第1個和第3個即可,中間那個是樣例,你也可以下載來看看,備用下載

2.解壓下載的文件,得到 plugin-updates 文件夾 和 info.json 文件,將 plugin-updates 文件夾(含里面的文件)復制到該插件的根目錄,然后打開插件的主文件,在所有函數(shù)的前面添加類似下面的檢測代碼

/* plugin-update-checker */
require 'plugin-updates/plugin-update-checker.php';
$MyUpdateChecker = new PluginUpdateChecker(
    'http://www.xxx.com/update/qa-lite/info.json',
    __FILE__,
    'qa-lite'
);

注意:第4行 是 info.json 的訪問地址(下文將講到),第 6 行 ‘qa-lite’ 是插件的別名 slug(一般就是插件主文件 qa-lite.php 去除.php后的 qa-lite)

上面的步驟如下圖所示:

wpdaxue.com-201301307

3.在插件主文件上可以看到版本號,如上圖的 Version: 1.3.1 ,那么接下來你將新版本(比如 1.3.2)插件文件上傳到你主機空間的一個目錄里,只要可以通過http網(wǎng)址訪問即可。打開剛才下載的 info.json 文件,按照里面的樣式填入 插件別名新版插件的下載地址版本號 等信息,如下圖

wpdaxue.com-201301308

然后保存,將 info.json 文件上傳到你的主機空間中,建議和剛才上傳的插件在同一個目錄,方便管理,同樣要確保可以通過 http 訪問。

上圖是精簡的 info.json ,你可以根據(jù)樣例填寫完整的信息,相信對于開發(fā)插件的你來說,可以看明白:

{
    "name" : "External Update Example",
    "slug" : "external-update-example",
    "homepage" : "http://www.ydqwiac.cn/",
    "download_url" : "http://www.ydqwiac.cn/files/external-update-example/external-update-example.zip",
    
    "version" : "2.0",
    "requires" : "3.0",
    "tested" : "3.5",
    "last_updated" : "2012-10-29 11:09:00",
    "upgrade_notice" : "Here's why you should upgrade...",
    
    "author" : "Janis Elsts",
    "author_homepage" : "http://www.ydqwiac.cn/",
    
    "sections" : {
        "description" : "(Required) Plugin description. Basic HTML can be used in all sections.",
        "installation" : "(Recommended) Installation instructions.",
        "changelog" : "(Recommended) Changelog. <p>This section will be opened by default when the user clicks 'View version XYZ information'.</p>",
        "custom_section" : "This is a custom section labeled 'Custom Section'." 
    },
    
    "rating" : 90,
    "num_ratings" : 123,
    "downloaded" : 1234
}

4.將剛才上傳的 info.json  的訪問地址填入 第 2 步中插件主文件的檢測代碼中。

到這里,遠程更新服務和插件檢測功能都已經(jīng)添加好了。

插件更新演示

1.如果該插件已經(jīng)正常啟用,稍等就可以看到升級提示:

wpdaxue.com-201301309

2.點擊上圖的 “查看 1.3.2 版本詳情”可以看到剛才我們在  info.json  填寫的一些信息:

wpdaxue.com-201301310

3.安裝升級,順利的話,就可以升級成功:

wpdaxue.com-201301311

插件升級所需要做的工作

1.更新插件主文件的 版本號,將插件包壓縮為 .zip格式,上傳到主機空間

2.更新 info.json 文件的 新版插件下載地址版本號 等信息,上傳覆蓋原來的即可

聲明:本站所有文章,如無特殊說明或標注,均為本站原創(chuàng)發(fā)布。任何個人或組織,在未征得本站同意時,禁止復制、盜用、采集、發(fā)布本站內容到任何網(wǎng)站、書籍等各類媒體平臺。如若本站內容侵犯了原著者的合法權益,可聯(lián)系我們進行處理。

給TA打賞
共{{data.count}}人
人已打賞
歡迎關注WordPress大學公眾號 WPDAXUE
WordPress開發(fā)

WordPress主題制作 之 添加自動檢測更新和一鍵升級功能

2013-1-24 6:22:00

WordPress開發(fā)

WordPress如何判斷登錄用戶的角色

2013-2-7 6:30:00

6 條回復 A文章作者 M管理員
  1. 版本詳情打不開。

  2. 請問如果我已經(jīng)提交到了官方,官方會提供更新功能麼?

    • 如果你提交過插件到官方,你應該知道,只要你提交了新版本到官方,使用這個插件的用戶,就可以收到更新提示的

    • 網(wǎng)站編輯

      對,才看到,不知道為什麼過了幾個小時官方才推送過來

  3. 謝謝分享!學習了!

?
個人中心
購物車
優(yōu)惠劵
今日簽到
有新私信 私信列表
搜索

尤溪县| 称多县| 陕西省| 南川市| 丰顺县| 祁连县| 曲阳县| 同心县| 高青县| 桂林市| 册亨县| 龙胜| 高唐县| 宝兴县| 盐津县| 砚山县| 攀枝花市| 鲜城| 石家庄市| 山阳县| 建阳市| 双辽市| 兴义市| 襄城县| 合山市| 福鼎市| 五台县| 大关县| 墨玉县| 万荣县| 平罗县| 赤壁市| 开原市| 石门县| 南江县| 宁南县| 丰台区| 稻城县| 开封县| 赤城县| 张家口市|