效果:

以typecho博客为列:

  • 文件路径:网站根目录/usr/themes/模板名/function.php,建议修改前先做个备份。
    直接在最尾巴或者合适的位置添加以下代码:
//判断内容页是否百度收录

function baidu_record() {
$url='http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];

if(checkBaidu($url)==1)
{echo "百度已收录";
}
else
{echo "<a style=\"color:red;\" rel=\"external nofollow\" title=\"点击提交收录!\" target=\"_blank\" 
href=\"http://zhanzhang.baidu.com/sitesubmit/index?sitename=$url\">百度未收录</a>";}
}

function checkBaidu($url)
{ 
$url = 'http://www.baidu.com/s?wd=' . urlencode($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, '没有找到')) { //没有找到说明已被百度收录
return 1;
} else {
return -1;
}
}
  • 文件路径:网站根目录/usr/themes/模板名/post.php,同样建议修改前先做个备份。
    可以在页面标题下方(如本站)或者你要展示的位置添加以下代码:

<span class="baidu-record">百度收录:<?php echo baidu_record() ?>
</span>
可以根据需要自己调整下样式。 保存后或者上传后,清理浏览器缓存,即可看到效果。

原理:

Typecho检测文章是否被百度收录,直接点的说,这个功能是从Wordpress魔改的,一开始用的是每个文章都直接检测一次,那么代码就很简单了,直接拿着URL去百度搜索里面找,根据结果,找到里面是否存在“没有找到”等字眼,若存在说明未收录,反之则收录了。

最后修改:2022 年 01 月 13 日 10 : 44 PM
如果觉得我的文章对你有用,请随意赞赏