我想操纵html标题标记,所以<title>
这些不是标题标签的内容!
我使用子主题,这是不可避免的,因为模板必须易于更新。所以我必须使用这些函数。php或标头。子文件夹中的php。
目前,我尝试使用函数。php
目前我有以下情况:
<!-- Start WP_HEAD
================================================== -->
<!-- This site is optimized with the Yoast WordPress SEO plugin v1.5.3.3 - https://yoast.com/wordpress/plugins/seo/ -->
<title>My awesome title-content</title>
<meta name="robots" content="noindex,follow,noodp,noydir"/>
<link rel="canonical" href="WEBSITE" />
<meta property="og:locale" content="de_DE" />
我想了解以下情况:
重点是标题标签
<!-- Start WP_HEAD
================================================== -->
<!-- This site is optimized with the Yoast WordPress SEO plugin v1.5.3.3 - https://yoast.com/wordpress/plugins/seo/ -->
<title itemprop="name" id="company_name">My awesome title-content</title>
<meta name="robots" content="noindex,follow,noodp,noydir"/>
<link rel="canonical" href="WEBSITE" />
<meta property="og:locale" content="de_DE" />
我当前尝试的功能。子文件夹中的php是:
add_action(\'get_header\', \'blog_template_add_ob_start\');
add_action(\'wp_head\', \'blog_template_add_ob_end_flush\', 100);
function blog_template_add_ob_start() {
ob_start(\'blog_template_add_filter_wp_head_output\');
}
function blog_template_add_ob_end_flush() {
ob_end_flush();
}
function blog_template_add_filter_wp_head_output($output) {
if (is_single()) {
$output = preg_replace(\'/<title>(.*?) - (.*?)<\\/title>/\', \'<title><span itemprop="name" id="company_name">$2</span> » $1</title>\', $output);
#$output = str_ireplace(\'<meta property="og:url" content="\' . $url . \'" />\', \'<meta property="og:url" content="\' . esc_attr(esc_url($altUrl)) . \'" />\', $output);
}
return $output;
}
我的第一次尝试是:第一:
function add_itempromp_to_title( $str )
{
#$str = preg_replace(\'/<title>(.*?) - (.*?)<\\/title>/\', \'<title><span itemprop="name" id="company_name">$2</span> » $1</title>\', $str);
return $str;
}
add_filter( \'wp_head\', \'add_itempromp_to_title\', 99 );
我试过这些:
Manipulating wp_head content但这已经不起作用了。
有人有主意吗?
Yoast插件版本为1.5.3.3
WP版本为3.8.3