腾讯云服务器优惠活动华纳云香港服务器

纯代码实现熊掌号H5页面结构化改造及数据提交插件

WordPress主题推荐

因为百度熊掌号是刚刚上线的,所以很多的主题和插件都没有提供应对的方案,今天明月就借助网上的相关资料整理出来了有关用好百度熊掌号的代码和插件,分享给大家。

纯代码实现熊掌号H5页面结构化改造及数据提交插件-第1张-boke112百科(boke112.com)

纯代码实现熊掌号 H5 页面结构化改造

首先我们需要根据百度熊掌号后台的“页面改造”里的提示先给自己的站点做个小小的改造以便百度熊掌号可以快速的识别和运用我们站点的链接数据,比如搜索结果中以结构化样式展现等。

纯代码实现熊掌号H5页面结构化改造及数据提交插件-第2张-boke112百科(boke112.com)

页面改造最重要的其实就是添加 JSON_LD 数据了,其实可以用下面的代码来实现:

  1. //获取文章/页面摘要
  2. function fanly_excerpt($len=220){
  3.     if ( is_single() || is_page() ){
  4.         global $post;
  5.         if ($post->post_excerpt) {
  6.             $excerpt  = $post->post_excerpt;
  7.         } else {
  8.             if(preg_match(‘/<p>(.*)<\/p>/iU’,trim(strip_tags($post->post_content,“<p>”)),$result)){
  9.                 $post_content = $result[‘1’];
  10.             } else {
  11.                 $post_content_r = explode(“\n”,trim(strip_tags($post->post_content)));
  12.                 $post_content = $post_content_r[‘0’];
  13.             }
  14.             $excerpt = preg_replace(‘#^(?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,0}‘.’((?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,’.$len.’}).*#s’,’$1‘,$post_content);
  15.         }
  16.         return str_replace(array(“\r\n”“\r”“\n”), “”$excerpt);
  17.     }
  18. }
  19. //优先获取文章中的三张图,否则依次获取自定义图片/特色缩略图/文章首图 last update 2017/11/23
  20. function fanly_post_imgs(){
  21.     global $post;
  22.     $content = $post->post_content;
  23.     preg_match_all(‘/<img .*?src=[\“|\’](.+?)[\”|\’].*?>/’, $content, $strResult, PREG_PATTERN_ORDER);  
  24.     $n = count($strResult[1]);  
  25.     if($n >= 3){
  26.         $src = $strResult[1][0].'”,“‘.$strResult[1][1].'”,“‘.$strResult[1][2];
  27.     }else{
  28.         if( $values = get_post_custom_values(“thumb“) ) {   //输出自定义域图片地址
  29.             $values = get_post_custom_values(“thumb”);
  30.             $src = $values [0];
  31.         } elseif( has_post_thumbnail() ){   //如果有特色缩略图,则输出缩略图地址
  32.             $thumbnail_src = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID),’full’);
  33.             $src = $thumbnail_src [0];
  34.         } else {    //文章中获取
  35.             if($n > 0){ // 提取首图
  36.                 $src = $strResult[1][0];
  37.             }
  38.         }
  39.     }
  40.     return $src;
  41. }

百度熊掌号在 Json_LD 数据里面是支持单张缩略图和三张缩略图的样式,所以上述代码会优先获取文章中的三张图,否则依次获取自定义图片/特色缩略图/文章首图。

建议大家把以上两段代码添加到你需要接入熊掌号的 WordPress 站点主题的 functions.php 文件中,然后继续:

  1. <?php
  2. if(is_single()){
  3.     echo ‘<script type=“application/ld+json”>{
  4.     “@context”“https://ziyuan.baidu.com/contexts/cambrian.jsonld”,
  5.     “@id”“‘.get_the_permalink().'”,
  6.     “appid”“这里请填写熊掌号ID”,
  7.     “title”“‘.get_the_title().'”,
  8.     “images”: [“‘.fanly_post_imgs().'”],
  9.     “description”“‘.fanly_excerpt().'”,
  10.     “pubDate”“‘.get_the_time(‘Y-m-d\TH:i:s’).'”
  11. }</script>
  12. ‘;}
  13. ?>

将上述代码添加在你的 WordPress 主题的 header.php 文件合适的位置,以上代码还做了一个 if 判断,只让该段代码在文章中输出。

关于 WordPress 接入百度熊掌号的 Json_LD 数据代码改造就给大家分享到这里了吧,最后如果大家的 WordPress 站点成功接入熊掌号,不妨再试试下面讲到的『WordPress 百度熊掌号/原创文章数据提交插件』,这个插件或许能够助力你更快的实现官方好数据提交和原创推送。

上述代码感谢【泪雪博客】的无私分享。

WordPress 百度熊掌号/原创文章数据提交插件

这是一款根据百度站长平台原创保护提交接口而升级开发的 WordPress 插件,目前插件已经开始适配百度熊掌号(原百度官方号)的数据提交内测,可实现用户自动自主的将文章推送至官方号及原创保护文章推送,支持定时文章推送。

纯代码实现熊掌号H5页面结构化改造及数据提交插件-第3张-boke112百科(boke112.com)

简单的插件设置页面,只需填写准入密钥 Token 即可(token 填写错误是没法保存和使用插件的哦,同时 token 获取地址也在插件设置页面设置提示说明了),如果你的站点或者博客基本都是原创文章,那么不言而喻你可以勾选这个默认原创的功能,这样你在发布文章的时候默认就会主动推送到百度,同时也是可以在发布文章的时候设置和勾选是否是原创而选择性推送,最新版插件还支持 WordPress 的“文章类型”选择等等。

纯代码实现熊掌号H5页面结构化改造及数据提交插件-第4张-boke112百科(boke112.com)

在发布模块中的状态也几乎做到了极致,提交成功,剩余的配额数量,配额上线,以及错过了发布文章一小时内提交的错过提示,总之你能想到的,作者已经想到并做到了。

提示:本插件适用于拥有百度熊掌号权限的 WordPress 站点,如果还未拥有熊掌号权限请通过熊掌号官网申请,具体可参考《在百度搜索资源平台申请熊掌号及开通服务的经历》这篇文章。
申明:目前百度熊掌号虽已经公开,但其调整可能也会毕竟频繁,所以插件可能存在没有及时升级的情况或者其它未知问题,欢迎大家及时反馈问题。
须知:为了保证插件能够持续的维护和升级更新,插件后期将可能升级为收费版本,象征性的收费,价格待定,或许9块,或许18块,还请大家提前了解。前往打赏插件作者:泪雪博客

纯代码实现熊掌号H5页面结构化改造及数据提交插件-第5张-boke112百科(boke112.com)

目前的数据改造和插件明月都已经用上了,也通过了百度熊掌号“页面改造”里在线校验工具的效验(如上图,有图有真相嘛!),至于说具体的效果只能是“拭目以待”了,其实最重要的还是“原创”内容的创作,这才是王道呀。明月近期也在努力的坚持“原创”,没办法呀,没有原创对于我们草根博客来说是不行的,看来这是一个必须要改变的过程了。

温馨提示

此插件的百度推送跟 Begin 主题集成的百度推送有冲突,两个同时都开启的话会造成 WordPress 发布文章后白屏以及推送失效的故障,所以建议关闭主题集成的百度推送功能。

赞 (0) 打赏
版权声明:本文为投稿文章,感谢 明月登楼 的投稿,版权归原作者所有!发布此文是出于传递更多信息之目的,若有来源标注错误或侵犯了您的合法权益,请联系我们,确认后马上更正或删除,谢谢!
wu