Discuz! 帖子外链自动添加nofollow的方法

转载 2018年04月15日 18:21:37
目录 用过论坛的童鞋们都知道,在帖子内容中经常会出现外部链接,或许演示地址的链接,外链出现的过多会导致网站权重降低,在此优化就需要给外链加上rel="nofollow"属性提高优化效果,因为很多帖子是会员发的,会员并不知道这个,也不可能让管理员后期一个个修改,这里给大家介绍一个方法让系统自动把外链都加上nofollow属性,修改方法如下:

1. 打开目录source/function/function_discuzcode.php文件,查找parseurl函数,对照以下代码进行修改:

[代码]php代码:

01function parseurl($url$text$scheme) {
02        global $_G;
03        if(!$url && preg_match("/((https?|ftp|gopher|news|telnet|rtsp|mms|callto|bctp|thunder|qqdl|synacast){1}:\/\/|www\.)[^\[\"']+/i", trim($text), $matches)) {
04                $url $matches[0];
05                $length = 65;
06                if(strlen($url) > $length) {
07                        $text substr($url, 0, intval($length * 0.5)).' ... '.substr($url, - intval($length * 0.3));
08                }
09        $url = nofollow($url);
10                return '<a href="'.(substr(strtolower($url), 0, 4) == 'www.' 'http://'.$url $url).'" target="_blank">'.$text.'</a>';
11        else {
12                $url substr($url, 1);
13                if(substr(strtolower($url), 0, 4) == 'www.') {
14                        $url 'http://'.$url;
15                }
16                $url = !$scheme $_G['siteurl'].$url $url;
17                return '<a href="'.nofollow($url).'" target="_blank">'.$text.'</a>';
18        }
19}
2. 在parseurl函数后面新增nofollow函数,代码如下:

[代码]php代码:

01function nofollow($url '')
02{
03    $temp array();
04 
05    if( ! empty($url))
06    {
07        $temp parse_url($url);
08 
09        if(isset($temp['host']) && $temp['host'] != $_SERVER['HTTP_HOST'])
10        {
11            $url .= '" rel="nofollow"';
12        }
13    }
14 
15    unset($temp);
16    return $url;
17}

discuz安装教程

-
  • 1970年01月01日 08:00

如何在discuz帖子中插入视频

From : http://jingyan.baidu.com/article/0f5fb099df9a7c6d8334ead5.html 用户在编辑帖子时,想要在帖子中插入视频,前提是站长在后...
  • robertsong2004
  • robertsong2004
  • 2015-07-10 21:25:20
  • 659

discuz!帖中图片附件添加alt描述的快捷方法

大家都是知道给图片标签添加alt描述对于SEO的重要性,但是作为国内使用范围最广的discuz!论坛程序却默认没有添加alt描述,现在本文介绍一种简单的方法来帮助站长快速设置图片alt属性,方法如下:...
  • lih062624
  • lih062624
  • 2017-03-21 10:27:44
  • 3705

Discuz!论坛SEO之为备案链接工信部网址添加nofollow方法

现在工信部备案要求越来越严格了,备案之后还会随时抽查,对于备案号也不像之前那个只要放置了就行了,还必须要链接到工信部的网站,很多站长担心因此而损失网站权重,本文介绍一种添加nofollow标签保护网站...
  • lih062624
  • lih062624
  • 2017-04-17 10:56:55
  • 3419

Discuz!论坛教程之设置帖子被支持/反对(顶/踩)后自动提升主题

本文介绍一种在帖子被用户支持/反对(顶/踩)后自动提升的方法: 修改文件: \source\module\forum\forum_misc.php 修改方法: 搜索 if($_G['sett...
  • lih062624
  • lih062624
  • 2017-05-09 13:51:52
  • 4316

Discuz!论坛教程之设置帖子内容编辑后自动提升主题

应用场景: 1、有些机器人注册后,发些不痛不痒的帖子,过后不久再回去编辑帖子,换成垃圾广告。这种发广告的方法十分隐蔽,本修改可在主题或回复被编辑后自动提升当前主题到列表顶端,让楼主和管理人员比较快速...
  • lih062624
  • lih062624
  • 2017-05-09 13:26:12
  • 3127

discuz 帖子列表页调用封面图片

打开文件: source/module/forum/forum_forumdisplay.php 找到如下代码 if($thread['rushreply']) {         $rusht...
  • qikexun
  • qikexun
  • 2016-07-11 23:59:56
  • 4414

Discuz!论坛教程之DIY调用主题标签TAG修改方法

很多站长希望在DIY的时候调用主题标签TAG,Discuz!默认是不支持调用TAG的,本文介绍如何修改DIY源码实现我们所需要的功能: 修改文件:source/class/block/forum/bl...
  • lih062624
  • lih062624
  • 2017-05-09 21:04:01
  • 6058

Discuz!教程之批量替换帖子中的内容

很多朋友有时候会遇到要批量修改全部帖子中的某些内容,下面介绍一种简单的使用sql语句的方法来处理: 论坛全部帖子内容中的“A内容”替换成“B内容”的sql语句 UPDATE pre_forum_p...
  • lih062624
  • lih062624
  • 2017-04-21 16:14:02
  • 3238

discuz数据库写入数据发帖

discuz的发帖逻辑比较复杂,网上找了几篇网站结合着整理下 discuz的数据采集程序,discuz发帖主要涉及几个数据库表         discuz发表主题设计的几个表:(这里...
  • u010716097
  • u010716097
  • 2017-04-09 17:19:30
  • 1465
收藏助手
不良信息举报
您举报文章:Discuz! 帖子外链自动添加nofollow的方法
举报原因:
原因补充:

(最多只允许输入30个字)