我的yoast seo插件有问题;我想从og:title中删除网站名称。
实际上,meta og:title,显示的是“TITLE OF PAGE” - “网站标题”的内容。
<meta property="og:title" content="The title of the page or blog - The title of the site" />
我如何删除网站名称,所以og:title只显示页面或博客的标题?
public function og_title( $echo = true ) {
if ( is_singular() ) {
$title = WPSEO_Meta::get_value( 'opengraph-title' );
if ( $title === '' ) {
$title = WPSEO_Frontend::get_instance()->title( '' );
}
else {
// Replace WP SEO Variables
$title = wpseo_replace_vars( $title, get_post() );
}
}
else if ( is_front_page() ) {
$title = ( $this->options['og_frontpage_title'] !== '' ) ? $this->options['og_frontpage_title'] : WPSEO_Frontend::get_instance()->title( '' );
}
else {
$title = WPSEO_Frontend::get_instance()->title( '' );
}
/**
* Filter: 'wpseo_opengraph_title' - Allow changing the title specifically for OpenGraph
*
* @api string $unsigned The title string
*/
$title = trim( apply_filters( 'wpseo_opengraph_title', $title ) );
if ( is_string( $title ) && $title !== '' ) {
if ( $echo !== false ) {
$this->og_tag( 'og:title', $title );
return true;
}
}
if ( $echo === false ) {
return $title;
}
return false;
}
谢谢
答案 0 :(得分:0)
有一个过滤器可用于修改Yoast SEO插件中的og标题: wpseo_opengraph_title 将此函数添加到functions.php中。如有必要,请更换sepparator字符。
add_filter('wpseo_opengraph_title','mysite_ogtitle', 999);
function mysite_ogtitle($title) {
$sepparator = " - ";
$the_website_name = $sepparator . get_bloginfo( 'name' );
return str_replace( $the_website_name, '', $title ) ;
}