WordPress 的主題、外掛、核心升級提醒、自動更新、一鍵更新等功能非常實用,但唯一不足在於僅限於提交至 WordPress.ORG 的主題/外掛。國外主題審查非常嚴格,這也造成了部分大神開發的困擾……今天在修復 Azure 時已實現 WordPress 非官方主題/外掛能夠正常升級的辦法,與大家分享。
WP Update Server+Plugin Update Checker+Theme Update Checker 完美整合即可實現主題、外掛的無縫升級。上傳 WP Update Server 並放置在更新伺服器根目錄下,確保以
http://yourserver.com/wp-update-server/?action=get_metadata&slug=主題名稱
此形式可正常訪問。
WP Update Server 下載地址:https://github.com/YahnisElsts/wp-update-server/archive/master.zip
1 、確保 cache 和 logs 兩個資料夾可寫;
2 、將更新的主題壓縮包 (ZIP 格式) 放置在 packages 資料夾下,且壓縮包名必須與主題名稱相同;
與 WordPress 外掛整合
Plugin Update Checker 下載地址:https://github.com/YahnisElsts/plugin-update-checker/archive/master.zip
將 Plugin Update Checker 放置在需要開啟升級功能的外掛目錄下,新增以下程式碼至主檔案,
path/to/、 http://example.com
以及 plugin-directory-name 需要自行修改:
|
require'path/to/plugin-update-checker/plugin-update-checker.php'; $MyUpdateChecker=PucFactory::buildUpdateChecker( 'http://example.com/wp-update-server/?action=get_metadata&slug=plugin-directory-name',//plugin-directory-name 保持與外掛名相同 __FILE__,//Full path to the main plugin file. 'plugin-directory-name'//plugin-directory-name 保持與外掛名相同 ); |
在外掛目錄下建立 readme.txt 作為檢視版本詳情的檔案。 Plugin Update Checker 每 12 小時檢查一次外掛更新,不會影響網站載入速度。
與 WordPress 主題整合
Theme Update Checker 下載地址:http://1.shadowcdn.com/files/theme-updates.zip
將 Theme Update Checker 放置在需要開啟升級功能的主題目錄下,新增以下程式碼至 functions.php ,
path/to/、 http://example.com
以及 theme-directory-name 需要自行修改:
|
require'path/to/theme-updates/theme-update-checker.php'; $MyThemeUpdateChecker=newThemeUpdateChecker( 'theme-directory-name',//theme-directory-name 保持與主題名字相同 'http://example.com/wp-update-server/?action=get_metadata&slug=theme-directory-name'//theme-directory-name 保持與主題名字相同 ); |
新增 Details URI 標識至 Style.css 檔案,作為檢視版本詳情的檔案:
Details URI:http://example.com/my-theme-changelog.html
Theme Update Checker 每 12 小時檢查一次外掛更新,不會影響網站載入速度。