Typecho检测文章是否被百度收录
Typecho检测文章是否被百度收录,直接点的说,这个功能是从Wordpress处拿过来改装的,一开始用的是每个文章都直接检测一次,那么代码就很简单了,直接拿着URL去百度搜索里面找,根据结果,找到里面是否存在“没有找到”等字眼,若存在说明未收录,反之则收录了。
当然这个方法未必就是准确的,只是大部分情况下,还是可以的。不准确的情况是,如果你的文章标题或者摘要存在这些字,又刚好被百度收录了,那么检测结果就是未收录。。。我想这个情况应该不多吧。
好吧,网上公开的百度搜索结果检测代码:
/* * 检测网页是否被百度收录,返回1则表示收录 返回0表示没有收录 * @ param string $url 待检测的网址 */ function checkBaiduInclude($url){ $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,'没有找到')){ return 1; }else{ return 0; } }
然后在每个文章的页面,调用一次函数checkBaiduInclude,如果结果是1,则是已经收录,反之是未收录,是不是很简单呢?
<?php if(checkBaiduInclude('get_permalink()') == 1) echo "百度已收录"; else echo "百度未收录"; ?>
当然,这个是最精简的版本了,可以加点判断,或者再处理下,未收录的可以点击提交给百度,已经收录的查看收录结果。
提交到百度收录的也很简单,如:
http://zhanzhang.baidu.com/sitesubmit/index?sitename=https://itlu.net/articles/2200.html
当然,我的百度提交是做了验证的,可以通过https://itlu.net/index/sendbaidu.php 来提交,再一个,我又重新写了一个小工具,可以直接提交,域名和token都预设在里面,是不是更简单呢?
这个版本是直接调用的,如果每天有1000UV,是不是要从主机访问1000次呢?所以继续改进是很有必要的,我就做了一个数据库版本的,将检测结果写进数据库,数据库用的就是SQLite,这个在下一篇文章详述。
一如既往的来个图吧。
转载本站原创文章请注明:文章转自 挨踢路,链接: https://itlu.net/articles/2200.html
我都不关心百度收不收录了,不过想说的是最后的图不错~
为了大家,也只能尽最大的努力了。
我喜欢文中的美女多些
男人本色
最后一张图是亮点
看文章,看文章
通过文章列表的图片点击进来的,虽然技术很好,但是图才是重点
男人本色啊,就喜欢这么直接的