昨天,小编发了一篇关于熊掌号的文章,介绍了本站成功申请并接入百度熊掌号。很多看了那篇文章的小伙伴多少都有点疑虑,代码要怎么加?才能符合百度熊掌号的要求。
今天小编就把具体操作方法给大家参考下。
改造前要确认自己的站点是否符合要求,网站必须有H5移动页面或者进行过MIP改造。
本站暂没进行MIP改造,所以这里以H5页面为例子介绍相关方法。
一、首先找到自己网站主题目录,在找到header.php文件,将以下代码粘贴到文件头部位置(即</head>标签之前)。
<?php
global $wp;
$current_url = home_url(add_query_arg(array(),$wp->request));
if($current_url)echo '<link rel="canonical" href="'.$current_url.'" />'."\n";
?>
<?php if( is_single() || is_page() ): ?>
<script type="application/ld+json">
{
"@context": "https://ziyuan.baidu.com/contexts/cambrian.jsonld",
"@id": "<?php echo curPageURL();?>",
"appid": "你的熊掌号ID",
"title": "<?php echo wp_title('', false); ?>",
"images": [
"<?php echo post_thumbnail_src();?>"
],
"description": "<?php if ($post->post_excerpt)
{$printDescription = $post->post_excerpt;}
else{
$printDescription = preg_replace('/\s+/','',mb_strimwidth(strip_tags($post->post_content),0,145,''));
}
echo $printDescription;?>",
"pubDate": "<?php echo get_the_time('Y-m-d\TG:i:s'); ?>"
}
</script>
<?php endif; ?>
<script src="//msite.baidu.com/sdk/c.js?appid=你的熊掌号ID"></script>
注意:由于上面代码中使用了curPageURL()函数获取当前网页地址,所以您还需要在function.php里定义此函数。代码如下(如果您的网站没有开启SSL,第10行里的端口443请修改成80):
// 说明:获取完整URL
function curPageURL()
{
$pageURL = 'http';
if ($_SERVER["HTTPS"] == "on")
{
$pageURL .= "s";
}
$pageURL .= "://";
if ($_SERVER["SERVER_PORT"] != "443" )
{
$pageURL .= $_SERVER["SERVER_NAME"] . ":" . $_SERVER["SERVER_PORT"] . $_SERVER["REQUEST_URI"];
}
else
{
$pageURL .= $_SERVER["SERVER_NAME"] . $_SERVER["REQUEST_URI"];
}
return $pageURL;
}
另外需要注意,不同主题缩略图获取函数可能存在差异,如果网页报错建议在function.php增加如下缩略图函数:
//输出缩略图地址
function post_thumbnail_src(){
global $post;
if( $values = get_post_custom_values("thumb") ) { //输出自定义域图片地址
$values = get_post_custom_values("thumb");
$post_thumbnail_src = $values [0];
} elseif( has_post_thumbnail() ){ //如果有特色缩略图,则输出缩略图地址
$thumbnail_src = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID),'full');
$post_thumbnail_src = $thumbnail_src [0];
} else {
$post_thumbnail_src = '';
ob_start();
ob_end_clean();
$output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches);
if(!empty($matches[1][0])){
$post_thumbnail_src = $matches[1][0]; //获取该图片 src
}else{
//如果日志中没有图片,则显示默认图片
$post_thumbnail_src = get_template_directory_uri().'/img/default_thumb.png';
}
}
return $post_thumbnail_src;
}
二、保存header.php文件。
三、刷新网站,查看网站源码观察是否已经出现如下代码片段。

四、分别复制网址和源码到百度熊掌号检测页面,进行手动检测。提示校验成功既代表符合熊掌号的格式规范。

接下来发表文章后就可以尝试提交链接了,目前本站还在测试,部分提交内容也没有显示出来。后期小编会跟着熊掌号的进度来进一步讲解相关功能的使用。


