我正在尝试在我的php模板中获得Yoast meta标题。我可以使用以下命令获取元标题:
$postid = get_the_ID();
echo get_post_meta($postid, '_yoast_wpseo_title', true);
问题是很多页面和帖子都有变量。如果我的书名中有变量,它只会将变量输出为%% sep %%和%% sitename %%,而不是生成实际的分隔符和站点名称。
所以我的问题是:在纯文本中生成变量后,如何获得yoast元标题?
经过一番搜索和思考,我想出了一个解决方案。我目前正在重写每个变量,以便将其解析为文本。
$postTitle = str_replace('%%title%%', get_the_title(), $postTitle);
$postTitle = str_replace('%%sitename%%', get_bloginfo('name'), $postTitle);
$postTitle = str_replace('%%sep%%', '-', $postTitle);
这可行,但是痛苦是我现在必须重写每个可能的变量。我仍然相信有更好的方法可以实现这一目标,但我还没有找到它。