我以前介绍过WordPress 5.8 新增 "Update URI" 插件头,第三方插件可以自建更新系统,现在 WordPress 将该功能扩展到了 6.1,主题也支持该了,这样第三方主题也可以自建更新系统。
新的主题头:”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
:已安装的语言环境,用于查找翻译。
最后还是特别说一下,如果是还是使用官方托管的主题,就不需要设置,其他没有自建第三方更新系统,也可以先写自己主题的介绍页面,只是没有提醒更新而已,之后自建。
标签:wordpress教学