解决百度自动推送 360自动收录重复推送[适用任何网站]

百度与360相继分别上线简单易用的JS自动推送、JS自动收录工具。然而,却并没有在其服务器端着手解决已收录网址的重复推送问题,而将之甩给了广大站长。

网络上已经出现了解决该问题的一些方案,遗憾的是,其方案要么只局限于百度,对360毫无效果,要么局限于wordpress网站程序。

笔者近日请得某位大神,略花小费,便获得了适用于任何网站的,对百度有效,对360亦有效的,可以规避对于已经被上述两大搜索引擎收录的网址的重复提交。

特记录于此,备他日之遗忘,亦以饗芸芸站长。转载者请标明出处,感谢合作!

代码如下:

//检查百度是否已收录最新改进版本
if(!function_exists(‘baidu_check_record’)){
function baidu_check_record($url){
/*
* 检测网页是否被百度收录,返回1则表示收录 返回0表示没有收录
* @ param string $url 待检测的网址
*/
$url=’http://www.baidu.com/s?wd=’.urldecode($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;
}
}
}

//检查360是否已收录最新改进版本
if(!function_exists(‘sll_check_record’)){
function sll_check_record($sslurl){
$sslurl=’https://www.so.com/s?q=’.urldecode($sslurl);
$csslurl=curl_init();
curl_setopt($csslurl,CURLOPT_URL,$sslurl);
curl_setopt($csslurl,CURLOPT_RETURNTRANSFER,1);
$rs=curl_exec($csslurl);
curl_close($csslurl);
if(!strpos($rs,’提交网址’)){
return 1;
}else{
return 0;
}
}
}

//输出百度\360自动推送
if(!function_exists(‘BaiduPushData’)){
function BaiduPushData() {
if ($_SERVER[‘HTTPS’] != “on") {
$currentUrl = ‘http://’.$_SERVER[‘HTTP_HOST’].$_SERVER[“REQUEST_URI"];
} else {
$currentUrl = ‘https://’.$_SERVER[‘HTTP_HOST’].$_SERVER[“REQUEST_URI"];
}

if(baidu_check_record($currentUrl) != 1) {
echo “<script>(function(){
var bp = document.createElement(‘script’);
var curProtocol = window.location.protocol.split(‘:’)[0];
if (curProtocol === ‘https’) {
bp.src = ‘https://zz.bdstatic.com/linksubmit/push.js’;
} else {
bp.src = ‘http://push.zhanzhang.baidu.com/push.js’;
}
var s = document.getElementsByTagName(‘script’)[0];
s.parentNode.insertBefore(bp, s);
})();</script>";
}

if(sll_check_record($currentUrl) != 1) {
echo “<script>(function(){
var src = (document.location.protocol == ‘http:’) ? ‘http://js.passport.qihucdn.com/11.0.1.js?ff9fcf5aa426930ff873e5449a765a46′:’https://jspassport.ssl.qhimg.com/11.0.1.js?ff9fcf5aa426930ff873e5449a765a46’;
document.write(‘<script src=\"‘%20+%20src%20+%20’\" id=\"sozz\"><\/script>’);
})();</script>";
}

}
}

add_action( ‘wp_footer’, ‘BaiduPushData’,90);

發表評論