在前很久我的网站的收录识别就已经不用了,今天就抽了点时间来看看到底是怎么回事。
之前我的用代码是这篇文章的内容《WordPress给文章添加百度是否已收录的功能》,现在用这样的方式会显示网站所有的文章被收录了,我猜测具体原因是百度那边的问题,这只是我的猜测,因为我也不懂这个代码,也许可以用其他的方式还能实现。
然后我来分析这个代码为什么会所有的文章都显示已收录。
首先分析第一段:
$baidu_record = get_post_meta($post_id,'baidu_record',true);
这一段运行的结果始终都是为1,具体原因是后面的代码已经写入了数据库,而且所以文章的标识都显示1。造成这样结果的代码是下面的IF语句。
if(!strpos($rs,'没有找到该URL。您可以直接访问') && !strpos($rs,'很抱歉,没有找到与') ){
update_post_meta($post_id, 'baidu_record', 1) || add_post_meta($post_id, 'baidu_record', 1, true);
return 1;
} else {
return 0;
}
if判断的结果始终是为真的,因为strpos()输出一直为null。这是因为百度那面没给出正确的结果,我把这个得到的结果用人工的方式去试过,需要进行一步滑动验证,原因就是出在这里,不知道网络上有没有人解决掉这个滑动验证。
历史上的今天:
欢迎来到菜鸟头头的个人博客本文章百度已收录,若发现本站有任何侵犯您利益的内容,请及时邮件或留言联系,我会第一时间删除所有相关内容。
2022年10月28日 14:14 沙发
百度有很多bug的
2021年7月30日 09:54 板凳
百度收录机制就是一个迷糊的醉汉
2021年7月30日 11:55 1层
@云点SEO 一切皆佛,就明白了百度了
2020年4月5日 10:52 地板
百度垃圾,不要管他了。
2020年4月5日 14:45 1层
@奶爸建网站笔记 哈哈已经不重要了