WordPress链接自动添加Noopener Noreferrer的解决办法

不知道大家有没有在文章内放外链的需要,考虑到SEO的问题一般都会给网站做个文章外链自动nofollow的功能,nofollow 是一个HTML标签的属性值。这个标签的意义是告诉搜索引擎"不要追踪此网页上的链接或不要追踪此特定链接。

 

厦门SEO最近在编辑网站的时候发现文章内的外链不能自动加nofollow属性,经过一番研究是WordPress新版本的问题。

 

WordPress链接自动添加Noopener Noreferrer的解决办法

 

WordPress在最近的版本更新中为所有需要新窗口打开的链接都自动添加了新的Noopener Noreferrer属性(导致nofollow属性失效)。

 

Noopener Noreferrer 属性并不是新发布的标准,但v4.7.4版开始WordPress的编辑器默认都会添加该属性。

 

该属性主要是用来防范新窗口打开链接时可能存在的钓鱼攻击, 因此作为安全性内容WordPress就给添加了。

 

但添加后新标签页面将无法通过常规方法追踪到来源页面,这在属性的字段中已经可以看出来:No Refer 。

 

在升级到WordPress v4.7.4版之后原先发布的内容附带的新窗口链接并不会自动添加Noopener Noreferrer。再代码中的展示为rel ="noopener noreferrer",具体情况,请看下图。

 

rel="noopener noreferrer"展示

 

但是如果是新发布的文章或者是你修改了之前发布的内容,那么新窗口链接全部会加 Noopener Noreferrer。

 

解决办法:

 

请将此段代码添加到你WordPress主题的function.php底部,然后保存并上传即可

  1. //WordPress链接自动添加Noopener Noreferrer的解决办法    by 厦门seo
  2. add_filter('tiny_mce_before_init','tinymce_allow_unsafe_link_target');
  3. function tinymce_allow_unsafe_link_target( $mceInit ) {
  4. $mceInit['allow_unsafe_link_target']=true;
  5. return $mceInit;
  6. }

 

注意事项:

 

添加之后新发布的内容附带的链接如果设置为新窗口打开,那么将不会再自动添加Noopener Noreferrer属性。

 

如果之前发布的文章已经附带了该属性即使添加之后也不会自动去除,你需要手动编辑然后依次删除新属性。

 

即手动编辑文章并将编辑器切换到文本模式然后将rel ="noopener noreferrer"删除掉然后保存更新就行了。

福建SEO

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: