Emlog对百度蜘蛛屏蔽广告避免影响落地页体验

  • 内容
  • 相关

PHP通过UA判断蜘蛛

将下面的代码加入到主题下的module.php文件中,以便后面调用。里面的蜘蛛UA,可以自由添加,修改。

<?php
function maple_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(!maple_crawler()){//如果不是蜘蛛
   echo '广告代码'; //这里换成你自己的广告代码
}
?>

需要注意的是,如果你的广告代码在文章列表循环中,不要使用上面的判断,在循环之外用变量存放是不是蜘蛛的判断结果,再在循环中判断那个变量即可。否则在在循环中执行太多判断影响代码的执行效率,大家注意了。
最后的效果就是,百度站长平台落地页体检已经查不出来了,全是符合规范。

本文标签:

版权声明:若无特殊注明,本文皆为《枫叶》原创,转载请保留文章出处。

本文链接:https://www.maple5.com/technology/57.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注

允许邮件通知