我正在尝试向帖子标题添加自定义字段(sample page). 为此,我遵循this previous question, 但变量并没有像预期的那样出现在标题中。事实上,出现了完全相同的标题。任何帮助都将不胜感激。
前面的说明表明应将以下代码添加到函数中。php:
function wpse_224340_document_title($title){
global $post; // make sure the post object is available to us
if(is_singular()){ // check we\'re on a single post
$release_author = get_post_meta(get_the_ID(), "release_author", true);
if($release_author != "")
{ $title["title"].= " (" . $release_author. ")";}
}
return $title;
}
add_filter("after_setup_theme", function(){ add_theme_support("title-tag"); });
本例中的变量是propertysq,而不是release\\u author。但一个简单的查找/替换会导致以下结果。。。
What occurs when I implement this code?
当前页面标题为:
HS0525 - Chaweng Noi - Horizon Homes Koh Samui
此标题已由Wordpress插件“Yoast SEO”自动插入但在我禁用此自动标题插入并插入上述代码后,插入到页面上的标题与上一页标题相同:
HS0525 - Chaweng Noi - Horizon Homes Koh Samui
Possible Sources of Error
可能的错误源#1:前面提到的插件/机制
<title>
在页面上。我目前正在研究这是否是原因。我想避免完全删除插件,但我可能不得不这样做。
可能的错误源#2:我是否需要编辑以下行以对应我的主题/功能?
$release_author = get_post_meta(get_the_ID(), "release_author", true);
我试着用下面的一行替换它,但它不起作用。
$propertysq = ale_get_meta(\'propertysq\');
我应该注意:
该站点没有合适的测试环境设置,在这里我可以很容易地看到PHP错误和转储变量根据前面的回答,我还记得对<title>
标记在我的标题中。php<编辑:这是我在函数中插入的确切代码。php:
add_filter("document_title_parts", "wpse_224340_document_title");
function wpse_224340_document_title($title){
global $post; // make sure the post object is available to us
if(is_singular()){ // check we\'re on a single post
$propertysq = get_post_meta(get_the_ID(), "propertysq", true);
if($propertysq != "")
{ $title["title"].= " (" . $propertysq. ")";}
}
return $title;
}
add_filter("after_setup_theme", function(){ add_theme_support("title-tag"); });