[Emlog]对百度蜘蛛屏蔽广告避免影响落地页体验
PHP通过UA判断蜘蛛
将下面的代码加入到主题下的module.php文件中,以便后面调用。里面的蜘蛛UA,可以自由添加,修改。
<?php
function sl_crawler() {
$userAgent = strtolower($_SERVER['HTTP_USER_AGENT']);
$spiders = array(
'Googlebot', // Google蜘蛛
'Baiduspider', //百度蜘蛛
'360Spider',//360蜘蛛
'Sogou News Spider',//搜狗蜘蛛
'bingbot',//必应蜘蛛
'Sosospider',//搜搜蜘蛛
);
if(!empty($userAgent)){
foreach ($spiders as $spider) {
$spider = strtolower($spider);
if (strpos($userAgent, $spider) !== false) {
return true;
}
}
}
return false;
}
?>
然后在添加广告代码的地方,加上判断,如下代码:
<?php
if(!sl_crawler()){//如果不是蜘蛛
echo '广告代码'; //这里换成你自己的广告代码
}
?>
温馨提示
如果你的广告代码在文章列表循环中,不要使用上面的判断,在循环之外用变量存放是不是蜘蛛的判断结果,再在循环中判断那个变量即可。否则在在循环中执行太多判断影响代码的执行效率。
最后的效果就是,百度站长平台落地页体检已经查不出来了,全是符合规范。
PHP通过UA判断蜘蛛
将下面的代码加入到主题下的module.php文件中,以便后面调用。里面的蜘蛛UA,可以自由添加,修改。<?php function sl_crawler() { $userAgent = strtolower($_SERVER['HTTP_USER_AGENT']); $spiders = array( 'Googlebot', // Google蜘蛛 'Baiduspider', //百度蜘蛛 '360Spider',//360蜘蛛 'Sogou News Spider',//搜狗蜘蛛 'bingbot',//必应蜘蛛 'Sosospider',//搜搜蜘蛛 ); if(!empty($userAgent)){ foreach ($spiders as $spider) { $spider = strtolower($spider); if (strpos($userAgent, $spider) !== false) { return true; } } } return false; } ?>
然后在添加广告代码的地方,加上判断,如下代码:
<?php if(!sl_crawler()){//如果不是蜘蛛 echo '广告代码'; //这里换成你自己的广告代码 } ?>
温馨提示
如果你的广告代码在文章列表循环中,不要使用上面的判断,在循环之外用变量存放是不是蜘蛛的判断结果,再在循环中判断那个变量即可。否则在在循环中执行太多判断影响代码的执行效率。
最后的效果就是,百度站长平台落地页体检已经查不出来了,全是符合规范。
评论列表