如何在WordPress主题中将自定义字幕作为og:TITLE添加到Facebook Open Graph元数据?

时间:2017-01-12 作者:kabeer shefy

我在本地语言中使用wp字幕插件作为标题,默认wordpress标题作为英语标题。我需要插件生成的字幕作为facebook上共享文章的标题。

get_the_subtitle();
以上代码是用于调用子标题的插件特定函数。

我使用下面显示的代码(在function.php中)作为Facebook开放图元数据来实现我的目标。

  echo \'<meta property="og:title" content="\' . get_the_subtitle() . \'"/>\'; 
但只有我得到默认的wordpress标题为og:title content. 下面是php函数中的代码。

//Adding the Open Graph in the Language Attributes
function add_opengraph_doctype( $output ) {
    return $output . \' xmlns:og="http://opengraphprotocol.org/schema/" xmlns:fb="http://www.facebook.com/2008/fbml"\';
}
add_filter(\'language_attributes\', \'add_opengraph_doctype\');

//Lets add Open Graph Meta Info

function insert_fb_in_head() {
    global $post;
    if ( !is_singular()) //if it is not a post or a page
        return;
    echo \'<meta property="fb:admins" content="XXXXXXX"/>\';
    echo \'<meta property="og:title" content="\' . get_the_subtitle() . \'"/>\';
    echo \'<meta property="og:type" content="article"/>\';
    echo \'<meta property="og:url" content="\' . get_permalink() . \'"/>\';
    echo \'<meta property="og:site_name" content="KERALA NEWS"/>\';
    if(!has_post_thumbnail( $post->ID )) { //the post does not have featured image, use a default image
        $default_image="http://www.example.com/wp-content/themes/dw-focus-master/assets/img/logo.png"; //replace this with a default image on your server or an image in your media library
        echo \'<meta property="og:image" content="\' . $default_image . \'"/>\';
    }
    else{
        $thumbnail_src = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), \'medium\' );
        echo \'<meta property="og:image" content="\' . esc_attr( $thumbnail_src[0] ) . \'"/>\';
    }
    echo "
    ";
}
add_action( \'wp_head\', \'insert_fb_in_head\', 5 );

1 个回复
SO网友:Alex MacArthur

可能是在特殊挂钩之后生成了重复的开放图元标记。将优先考虑后面的标记,这意味着不会进行自定义。

稍后尝试设置钩子的顺序,以便在生成任何其他钩子之后发生:

// default is 10; I\'m using 11 arbitrarily
add_action( \'wp_head\', \'insert_fb_in_head\', 11 ); 
不过,更重要的是,您需要确认没有其他任何东西在生成OG。检查您的插件,并考虑在上使用,以便根据需要自定义OG数据,如完整的开放图:

https://wordpress.org/plugins/complete-open-graph/

相关推荐

从Facebook图表中获取头像

我使用此插件连接fbwordpress。org/plugins/nextend-facebook-connect/问题是我需要从存储在数据库中的FB图中显示头像。当我使用这个插件wordpress时。org/plugins/sidebar登录/这个插件可以完美地显示fb头像。现在我只需要创建一些可以称之为化身图像的编码。当我使用这个:get\\u avatar是show misterius man avatar,而不是fb why时,我的问题是侧栏登录插件可以显示fb gtaph avatar使用相同的标