如何给wordpress站内文章连接加上nofollow属性

最近研究nofollow的使用,发现还蛮重要的,谷歌和百度都有用处,于是在网上搜了一下相关的教程,以下文字来源自齐哈免费空间。

我们可以看到,很多人的博客内文章里的链接都是直接的纯文本,这样可以有效的组织权重的流散,沧海原本是很不在意这个的,关于这个文章,是因为最近 发现好像奇哈网的站内文章权重越来越低了,甚至到了百度不收录新文章的地步了,所以决定将站内的文章里的链接全部加上nofollow的标签来阻止权重的 流失。

不过显然每个文章里面都通过手动来加上nofollow标签,是我们这些懒人根本不愿干的事情。WordPress 默认的超链接里是没有nofollow标签的,所以我们需要给他增加一个这个功能。

在网上找了几个方法,发现下面这个方法最快最省事。

首先,将以下代码添加到functions.php 文件中

add_filter(‘the_content’, ‘my_nofollow’);

function my_nofollow($content) {
return preg_replace_callback(‘/]+/’, ‘my_nofollow_callback’, $content);
}

function my_nofollow_callback($matches) {
$link = $matches[0];
$site_link = get_bloginfo(‘url’);

if (strpos($link, ‘rel’) === false) {
$link = preg_replace(“%(href=\S(?!$site_link))%i”, ‘rel=”nofollow” $1’, $link);
} elseif (preg_match(“%href=\S(?!$site_link)%i”, $link)) {
$link = preg_replace(‘/rel=\S(?!nofollow)\S*/i’, ‘rel=”nofollow”‘, $link);
}
return $link;
}

至于放在哪里,只要不是把原来一段代码切断即可,你可以放在标注的前后。

这个代码可以将所有文章内的站外链接全部加上nofollow属性,而站内链接则不限制,而且已发布的文章页有效。

发表回复

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

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据