实现WordPress自动检查文章是否被百度收录【免插件】

今天有读者朋友问我,我的博客文章页面上那个显示百度已收录的功能是怎么实现的(具体效果见下图),一两句说也说不清楚,我就准备写个教程来给大家分享一下,希望可以帮助到有需要的朋友。 如标题所说,今天我给大家分享的是 免插件实现WordPress自动检查文

今天有读者朋友问我,我的博客文章页面上那个显示“百度已收录”的功能是怎么实现的(具体效果见下图),一两句说也说不清楚,我就准备写个教程来给大家分享一下,希望可以帮助到有需要的朋友。

【免插件】实现WordPress自动检查文章是否被百度收录

如标题所说,今天我给大家分享的是免插件实现WordPress自动检查文章是否被百度收录,如果收录了就显示“已经收录”,如果没有收录就显示为“百度未收录”,点击就能直接在百度站长平台提交当前页面的URL了,方便蜘蛛发现新文章,从而加快文章的收录速度。

既然是免插件,当然也有可以通过插件形式实现的方法,我之前用的一款同样功能的插件叫baidu-accept(点 击可下载该插件),但是这个插件有个问题就是只有管理员才能看到文章是否被收录,对于读者来说是看不到这个效果存在的(所有直到今天才有读者问我这个功能 是怎么实现的)。页面有了这个功能,对有些读者来说可能比较稀奇了,就会好奇去点一下,结果要么能多给我在百度带来几个正常的点击,要么会帮我在百度站长平台提交一下未收录的文章(呵呵,当然这只是我一厢情愿啦!)

下面来说说具体操作步骤:

第一步:进入Wordpress后台,点击外观,然后点编辑,在右边选择“模板函数”functions.php文件,在最后一个?>标签之前,添加如下代码并保存,然后进入下一步,

【免插件】实现WordPress自动检查文章是否被百度收录
function baidu_check($url){
    global $wpdb;
    $post_id = ( null === $post_id ) ? get_the_ID() : $post_id;
    $baidu_record  = get_post_meta($post_id,'baidu_record',true);
    if( $baidu_record != 1){
        $url='http://www.baidu.com/s?wd='.$url;
        $curl=curl_init();
        curl_setopt($curl,CURLOPT_URL,$url);
        curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
        $rs=curl_exec($curl);
        curl_close($curl);
        if(!strpos($rs,'没有找到')){
            if( $baidu_record == 0){
                update_post_meta($post_id, 'baidu_record', 1);
            } else {
                add_post_meta($post_id, 'baidu_record', 1, true);
            }    
                return 1;
        } else {
            if( $baidu_record == false){
                add_post_meta($post_id, 'baidu_record', 0, true);
            }    
            return 0;
        }
    } else {
       return 1;
    }
}
function baidu_record() {
    if(baidu_check(get_permalink()) == 1) {
        echo '<a target="_blank" title="点击查看" rel="external nofollow" href="http://www.baidu.com/s?wd='.get_the_title().'">百度已收录</a>';
   } else {
        echo '<a style="color:red;" rel="external nofollow" title="一键帮忙提交给百度,谢谢您!" target="_blank" href="http://zhanzhang.baidu.com/sitesubmit/index?sitename='.get_permalink().'">百度未收录</a>';
   }
}

第二步:编辑WordPress主题下的文章模板(一般是single.php),在想要显示收录结果的位置添加如下代码并保存,整个完过程就完成了。如下图:

【免插件】实现WordPress自动检查文章是否被百度收录

代码如下:

<?php baidu_record(); ?>

总结

免插件实现WordPress自动检查文章是否被百度收录这个方法看起来挺复杂,其实也有两个步骤而已经,如果你动手能力稍微强一点的话,还是非常有成就感的!毕竟安装这个插件还需要200多K的空间,而其实也就几句代码的事情嘛!

最后,大家如果还有什么不明白的地方,或者还实现不了这个功能,欢迎在下面的留言框里提出来。

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

上一篇、下一篇文章代码: ?php previous_post_link(%link,) ??php next_post_link(%link,) ? 该代码解析出来的代码大概如下: a href= rel=external nofollow rel=external nofollow /aa href= rel=external nofollow rel=external nofollow /a 通过 get_pr
WordPress目前在最近的版本中为所有需要新窗口打开的链接都自动添加了新的 noopener noreferrer 属性。noopener noreferrer 属性并不是新发布的标准,但 WordPress 4.7.4 版开始的编辑器默认都会添加该属性。新窗口打开超链接的属性 target=_blank 增加 rel=
NAS已经把玩差不多半个月了,基本的download,DLNA,都已搞定。因为一直都是博客的忠实支持者,所以必须把自己的博客也搬到NAS上,老是跟大家都混在新浪上岂不是很没面子。于是开始购入域名,研究DDNS,找博客平台。很快锁定wordpress,看了别人建站效果,感
尊敬的百度站长平台用户您好: 百度搜索自推出MIP移动网页加速器以来反响良好,截至目前超过10.2亿个页面完成MIP化改造。 为了降低站点MIP改造难度,在MIP技术研究小组的辛勤工作下,wordpress、帝国CMS、织梦DEDECMS标准模板已编写完成供大家使用,欢迎大家
WordPress全站伪静态应该怎么做?主机的操作系统不同,设置方法也不同: 一、linux主机下的WordPress全站伪静态设置起来比较容易,只需要在WP的后台设置固定链接更改为自定义格式:/%post_id%.html 设置更改后,文章的网址就会变成形如:http://www.XXX.com/
随着互联网的普及,建站门槛的降低,很多没有专业知识的国人也加入到了建站大军之中,最初那批只为了讨论代码的以及建站经验的站长也都消失的差不多了,现在个人建站很少有不带商业目的的。随着网站的增加,但是互联网信息的资源却没有那么快速的增长,造成