Discuz判断搜索引擎蜘蛛访问教程

overme6个月前 (10-17)网页设计497
Discuz系统中原生集中了判断搜索引擎蜘蛛爬虫访问的函数checkrobot(),方法定义在文件:\source\function\function_core.php


checkrobot()具体代码如下:

function checkrobot($useragent = ”) {
        static $kw_spiders = array(‘bot’, ‘crawl’, ‘spider’ ,’slurp’, ‘sohu-search’, ‘lycos’, ‘robozilla’);
        static $kw_browsers = array(‘msie’, ‘netscape’, ‘opera’, ‘konqueror’, ‘mozilla’);
        $useragent = strtolower(empty($useragent) ? $_SERVER[‘HTTP_USER_AGENT’] : $useragent);
        if(strpos($useragent, ‘http://’) === false && dstrpos($useragent, $kw_browsers)) return false;
        if(dstrpos($useragent, $kw_spiders)) return true;
        return false;
}

函数功能说明:
checkrobot()函数声明了一些常见的蜘蛛爬虫UserAgent,分析全局变量$_SERVER中的$_SERVER『’HTTP_USER_AGENT]根据$useragent关键词判断该访问是否是搜索引擎蜘蛛爬虫。

由于只是爬虫关键词匹配,可能会有一定的误判,有兴趣的DZ站长可以对此函数进行优化。

使用方法举例:
if(checkrobot()){
//访客是蜘蛛爬虫的情况,执行的流程
}
else{
//访客是自然访客情况下的执行流程
}

相关文章


		Discuz帖子内容页标题版块名称去除方法

Discuz帖子内容页标题版块名称去除方法

如下图红框所示,Discuz默认的帖子内容页标题格式中,带有版块名称. 这样的内容页标题结构,导致标题过长,百度等搜素引擎收录时,标题看不到站点名称. 如何去除标题中的版块名称呢? 试着修改h...


		手机访问discuz网站 自动跳转手机版域名

手机访问discuz网站 自动跳转手机版域名

1. 前往域名服务商后台,对需要添加的手机域名进行解析 比如:m.5izixue.com 2. 二级域名解析后,登录Discuz 后台,进入域名设置,填写手机域名信息 3. 以上两步设置完后,输入...


		如何在DISCUZ发帖页添加自定义字段

如何在DISCUZ发帖页添加自定义字段

使用DISCUZ系统仿站时,发帖时如果要新增一些参数,怎么样才能实现这样的效果呢? 下面我爱自学网分享在网络上收集到的发帖内页添加字段的方法,供参考。 第一步:使用管理员用户名密码登录DISCUZ...

discuz模板制作调用标签大全 标签汇总

discuz模板制作过程中需要使用大量的调有标签来替换固定的文字,这些调用标签都是DZ官方提供的,它代表了各自的含义,下面是DZ官方提供的模板调用标签大全 数据ID {id} 帖子URL...

Discuz密码错误15分钟后登陆解决方法

使用Discuz建网站时,会遇到这样的问题,就是当用户密码输错5次之后,Discuz就会提示“密码错误次数过多,请15分钟后登陆”。怎么解决这样的问题呢? 下面介绍一下Discuz“密码错误次数过...


		Discuz图片水印设置方法教程

Discuz图片水印设置方法教程

发布图片时,为了防止侵权盗用,或是为了宣传网址引流,需要添加在图片上添加水印。 在此分享Discuz系统图片水印设置方法: Discuz论坛的水印设置很简单,使用制作的水印图片覆盖系统水印地址,然...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。