从og:title Yoast seo插件中删除网站名称



我对yoast seo插件有问题;我想从og:title中删除网站名称。

实际上,meta-og:title显示的内容是页面标题-网站标题。

 <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;
}

感谢

有一个过滤器可以用来修改Yoast SEO插件中的日志标题:wpseo_opengraph_title将此函数添加到functions.php中。如有必要,请替换分隔符字符。

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 ) ;
}

最新更新