WordPress文章外链自动添加nofollow属性 - WordPress建站教程

稍微明白一点网站优化的朋友应该都清楚nofollow的一些玩法,主要是集中网站权重,减少不必要的关键词收录。我们在使用wordpress程序建站中,不可避免的文章中需要频繁出现外链(有些外链是方便用户体验)。

但是这里我们并不像让外链来分散自己网站的权重,所以就需要给不需要的链接增加上nofollow,为了节省效率,我来告诉大家怎样让WordPress文章外链自动添加nofollow属性

 

直接使用代码

方法很简单,将下面的代码直接添加到wordpress主题文件中的functions.php文件里面。

// 文章页面外链自动添加nofollow属性和新窗口打开

add_filter( 'the_content', 'cn_nf_url_parse');

function cn_nf_url_parse( $content ) {

$regexp = "<a\s[^>]*href=(\"??)([^\" >]*?)\\1[^>]*>";

if(preg_match_all("/$regexp/siU", $content, $matches, PREG_SET_ORDER)) {

if( !empty($matches) ) {

$srcUrl = get_option('siteurl');

for ($i=0; $i < count($matches); $i++)

{

$tag = $matches[$i][0];

$tag2 = $matches[$i][0];

$url = $matches[$i][0];

$noFollow = '';

$pattern = '/target\s*=\s*"\s*_blank\s*"/';

preg_match($pattern, $tag2, $match, PREG_OFFSET_CAPTURE);

if( count($match) < 1 )

$noFollow .= ' target="_blank" ';

$pattern = '/rel\s*=\s*"\s*[n|d]ofollow\s*"/';

preg_match($pattern, $tag2, $match, PREG_OFFSET_CAPTURE);

if( count($match) < 1 )

$noFollow .= ' rel="nofollow" ';

$pos = strpos($url,$srcUrl);

if ($pos === false) {

$tag = rtrim ($tag,'>');

$tag .= $noFollow.'>';

$content = str_replace($tag2,$tag,$content);

}

}

}

}

$content = str_replace(']]>', ']]>', $content);

return $content;

}

 

网站建设

【独立IP】网站建设中独立ip的重要性

2020-9-3 10:06:09

WordPress建站WordPress教程

纯代码实现获取wordpress网站所有文章链接 - WordPress建站

2020-9-7 16:43:10

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧