WordPress 4.1 Dinah 添加了新函数,用于在主题中显示标题<title>标签,取代之前的 wp_title() 函数,在主题的functions.php文件中添加下面的函数就可以实现<title>标签:
function theme_slug_setup() {
为兼容 4.1 之前的版本,你还需要在主题functions.php文件中添加以下代码 :
/*
URI: http://www.codebye.com
Author: codebye
Description: 兼容4.1之前版本Title标签
Tags: functionsX titleX WordPressX wp_title,document_title_parts,document_title_separator,pre_get_document_title
*/
if ( ! function_exists( '_wp_render_title_tag' ) ) { function theme_slug_render_title() { ?> <title><?php wp_title( '|', true, 'right' ); ?></title> <?php } add_action( 'wp_head', 'theme_slug_render_title' ); }
WP官方消息,WordPress 4.4 将不再支持 wp_title()函数,所以对于主题和插件开发者来说,需要检查主题是否还在使用 wp_title() ,并同步更新主题相关文件。替代使用以下这些新的过滤器(filter)用于自定义网站title标题:
- ‘pre_get_document_title’ 检查 wp_get_document_title() 是否返回任何东西而不是一个空值
- ‘document_title_separator’ 过滤器来设定标题之间的分隔符
- ‘document_title_parts’ 过滤器来设定文档标题的其他组成部分,通过关联数据传递
主题不应再用 wp_title() 来生成标题,因为如果主题添加了 add_theme_support( ‘title-tag’ ); 到 after_setup_theme 钩子,标题本身会通过 WordPress 内部的核心函数来处理。通过开启调试模式查看主题是否还在用 wp_title() 函数,只需在 WordPress 4.4 配置文件中开启调试模式,就会有相关的提示信息。
开启 WordPress 调试模式的方法:在网站根目录的 wp-config.php 文件查找以下代码:define(‘WP_DEBUG’, false);
将参数 false 修改为 true 即可,如果找不到这个代码,可以直接添加代码段:define(‘WP_DEBUG’, true);