WordPress 6.1 新增Update URI主題頭,第三方主題可以自建更新系統

我以前介紹過 WordPress 5。8 新增 “Update URI” 外掛頭,第三方外掛可以自建更新系統,現在 WordPress 將該功能擴充套件到了主題,主題也支援該標頭了,這樣第三方主題也可以自建更新系統。

新的主題標頭:“Update URI”

WordPress 6。1 引入了一個新的更新 URI 主題頭欄位 “Update URI”,使用它可以避免第三方主題被 WordPress。org 官方主題目錄中

同名主題

的更新而被覆蓋,簡單說 WordPress 只要判斷它的值和

https://wordpress。org/themes/{$slug}/

w。org/theme/{$slug}

不同,WordPress 就不會去官方的主題庫更新該主題。

我們可以這樣設定這個新的主題標頭欄位:

https://wordpress。org/themes/example-theme/

—— 繼續使用官方主題更新

https://example。com/my-theme/

—— 使用自己的更新系統

my-custom-theme-name

—— 隨便寫點東西也可,比如是官方下載的主題,不想被更新了,這裡寫點東西,就不會被更新了

當然也可以設定為 false,但是這樣就不能用下面的 filter 進行自定義更新或者被其他使用 false 的自定義更新主題的程式碼自定義更新,所以要設定了,最好還是設定一個自己相關的唯一的值,比如:

https://wordpress。org/themes/autumn-pro/

對於還是在 WordPress。org 託管主題的主題作者來說,其實無需設定這個值,如果非要設定,那就一定要設定成下面的值:

https://wordpress。org/themes/{$slug}/

w。org/theme/{$slug}

update_themes_{$hostname} Filter

此外,WordPress 6。1 還引入了

update_themes_{$hostname}

filter,第三方主題開發者可以使用它來為特定的主機名下的主題提供更新服務。

這個 filter 用來過濾指定主機名下的主題的更新資訊,filter 的動態部分

$hostname

指的是

Update URI

主題標頭對應 URL 的主機名,此外還有四個引數:

$update

:主題更新資訊,預設為 false。

$theme_data

:主題標頭資訊列表。

$theme_stylesheet

:主題樣式表文件名。

$locales

:已安裝的語言環境,用於查詢翻譯。

最後還是特別說一下,如果是還是使用官方託管的主題,就不需要設定,其他沒有自建第三方更新系統,也可以先寫自己主題的介紹頁面,只是沒有提醒更新而已,之後自建。