免费分享
个人遇到的疑难问题

Wordpress向熊掌号提交数据化Json-LD结构,可实现熊掌号有图

依彤学习博客已经接入熊掌号一段时间了,效果还是不错的,话说依彤学习官方网站已经建立有三年之久了还没有享受这个待遇呢,也就是博客易于管理和维护,博客文章只能是手写,所以大家多多支持我吧,希望我的经验对大家有帮助。

关于百度熊掌号,由于出来时间不长,有的人是知道此许,有的是完全不知道,所以有一大部分人还在摸索过程中,百度出了个熊掌号目一是为了让大家多作原创,让网络上有更多精美的作品,而不是一大堆的垃圾复制品,其二是为了迎合大鱼号,想看号等等号,这些号有的是主视频,有的是主图片,都有其特色,这里我就不多介绍了,海豚现在就从最基本的操作,教大家如何安装Wordpress百度熊掌号。

Wordpress安装百度熊掌号第一步,我们先进入熊掌号的后台,如果你还没有申请的话,自行解决吧,这个我就不详细的说怎么注册了

看右边,大家能看到百度熊掌号的php接入接口,点开之后,复制里边的代码

$urls = array(
    'http://www.example.com/1.html',
    'http://www.example.com/2.html',
);
$api = 'http://data.zz.baidu.com/urls?appid=***&token=***&type=realtime';
$ch = curl_init();
$options =  array(
    CURLOPT_URL => $api,
    CURLOPT_POST => true,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POSTFIELDS => implode("\n", $urls),
    CURLOPT_HTTPHEADER => array('Content-Type: text/plain'),
);
curl_setopt_array($ch, $options);
$result = curl_exec($ch);
echo $result;

大家可以看到百度给出的代码样例,实际上这个代码是一个完整的提交代码,我们可以直接使用的,只需要将它加入到<?php?>中即可,如

<?php
$urls = array(
    'http://www.example.com/1.html',
    'http://www.example.com/2.html',
);
$api = 'http://data.zz.baidu.com/urls?appid=***&token=***&type=realtime';
$ch = curl_init();
$options =  array(
    CURLOPT_URL => $api,
    CURLOPT_POST => true,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POSTFIELDS => implode("\n", $urls),
    CURLOPT_HTTPHEADER => array('Content-Type: text/plain'),
);
curl_setopt_array($ch, $options);
$result = curl_exec($ch);
echo $result;
?>

看见了吗?如果你是个小白,也应该如何使用这个东西了吧,记住将&aip改为你自己的站长信息,要不然是提交不了的哦,剩下的我们只需要将$urls = array(中的值换成我们动态的每篇文章地址就可以了,这样就能每次发布新文章就都推送到百度了。

搞定上面的东西之后,我们还需要为自己的粉丝做一点事情,就是添加文章bar,这样能够在我们的文章里看到熊掌号的信息,以便于增加新的粉丝

总共有3个左右的粉丝关注代码,要添加在什么地方百度已经说得很明白了,大家按照百度说得去做就可以了,直接添加完不需要额外做什么修改

    <script type="application/ld+json">
        {
            "@context": "https://ziyuan.baidu.com/contexts/cambrian.jsonld",
            "@id": "https://www.example.com/******",
            "appid": "*****",
            "title": "页面标题******",
            "images": [
                "https://www.example.com/***/pic1.png",
                "https://www.example.com/***/pic2.png",
                "https://www.example.com/***/pic3.png"
            ], //请在此处添加希望在搜索结果中展示图片的url,可以添加0个、1个或3个url
            "pubDate": "2017-06-15T08:00:01" // 需按照yyyy-mm-ddThh:mm:ss格式编写时间,字母T不能省去
        }
    </script>

最后需要添加的就是这个重要的东西,只有添加了JSON-LD之后熊掌号才能显示你的图片以及你的文章简介等信息,上边大家看到的也是一个完整的代码,只需要添加到</head>标签之前就可以,最好是贴着</head>标签,里边有两个数据,需要我们写代码进行获取和整理,分别是图片和文章简介

一、文章简介,大家看下面的代码

//获取文章/页面摘要
function fanly_excerpt($len=220){
	if ( is_single() || is_page() ){
		global $post;
		if ($post->post_excerpt) {
			$excerpt  = $post->post_excerpt;
		} else {
			if(preg_match('/<p>(.*)<\/p>/iU',trim(strip_tags($post->post_content,"<p>")),$result)){
				$post_content = $result['1'];
			} else {
				$post_content_r = explode("\n",trim(strip_tags($post->post_content)));
				$post_content = $post_content_r['0'];
			}
			$excerpt = preg_replace('#^(?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,0}'.'((?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$len.'}).*#s','$1',$post_content);
		}
		return str_replace(array("\r\n", "\r", "\n"), "", $excerpt);
	}
}

这个是functions,你可以放入主题文件有关的funtion中

<script type="application/ld+json">{
	"@context": "https://ziyuan.baidu.com/contexts/cambrian.jsonld",
	"@id": "<?php the_permalink(); ?>",
 	"appid": "这里请填写熊掌号 ID",
	"title": "<?php the_title(); ?>",
	"images": ["<?php echo catch_that_image() ?>"],
	"description": "<?php echo fanly_excerpt()?>",
	"pubDate": "<?php echo get_the_time('Y-m-d\TH:i:s')?>",
}</script>

这一段就直接放在你的模板展示页面的中,上面这两段代码只能保证提交到熊掌号的信息是简介、时间、标题等等的,如果想要提交图片的话,请看下面这两段代码,添加的位置和方式是一样的,大家自己领会吧!

//获取文章/页面摘要
function fanly_excerpt($len=220){
	if ( is_single() || is_page() ){
		global $post;
		if ($post->post_excerpt) {
			$excerpt  = $post->post_excerpt;
		} else {
			if(preg_match('/<p>(.*)<\/p>/iU',trim(strip_tags($post->post_content,"<p>")),$result)){
				$post_content = $result['1'];
			} else {
				$post_content_r = explode("\n",trim(strip_tags($post->post_content)));
				$post_content = $post_content_r['0'];
			}
			$excerpt = preg_replace('#^(?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,0}'.'((?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$len.'}).*#s','$1',$post_content);
		}
		return str_replace(array("\r\n", "\r", "\n"), "", $excerpt);
	}
}
 
//获取文章中的图 last update 2018/01/22
function fanly_post_imgs(){
	global $post;
	$src = '';
	$content = $post->post_content;  
	preg_match_all('/<img .*?src=[\"|\'](.+?)[\"|\'].*?>/', $content, $strResult, PREG_PATTERN_ORDER);  
	$n = count($strResult[1]);  
	if($n >= 3){
		$src = $strResult[1][0].'","'.$strResult[1][1].'","'.$strResult[1][2];
	}elseif($n >= 1){
		$src = $strResult[1][0];
	}
	return $src;
}
--------为恐惧症者分开-----------------
<?php
if(is_single()){
	echo '<script type="application/ld+json">{
	"@context": "https://ziyuan.baidu.com/contexts/cambrian.jsonld",
	"@id": "'.get_the_permalink().'",
 	"appid": "这里请填写熊掌号 ID",
	"title": "'.get_the_title().'",
	"images": ["'.fanly_post_imgs().'"],
	"description": "'.fanly_excerpt().'",
	"pubDate": "'.get_the_time('Y-m-d\TH:i:s').'"
}</script>
';}
?>

好了,很简单吧,呵呵!你们看起来简单,我写起来可就难了,为了辛苦的我再次为你们解决难题,打个赏吧!

赞(1) 打赏
转载本文请注明出处:一同学习 » Wordpress向熊掌号提交数据化Json-LD结构,可实现熊掌号有图

心情好就赏一波!

支付宝扫一扫打赏

微信扫一扫打赏

×
订阅图标按钮