相信大多数了解 SEO 的朋友都应该清楚,在自己的 WordPress 主题里给外部链接添加 Nofollow 属性是十分有必要的,而每次都要手动添加是否太累?确实如此啊。。。小编这枚菜鸟刚开始就是如此,现在学精明了,给 WordPress 主题的外链自动添加 Nofollow 属性,怎么样,自动的,省心省事,用 WordPress 写文章更简单了一步哈!

20130613092302

下面来正题了,将下面的代码复制进主题根目录的 functions.php 文件里即可:

  1. add_filter('the_content', 'auto_nofollow');   
  2.    
  3. add_filter('comment_text', 'auto_nofollow');   
  4.    
  5. function auto_nofollow($content) {  
  6.       
  7.    
  8.     return preg_replace_callback('/<a>]+/', 'auto_nofollow_callback', $content);  
  9. }  
  10.    
  11. function auto_nofollow_callback($matches) {  
  12.     $link = $matches[0];  
  13.     $site_link = get_bloginfo('url');  
  14.    
  15.     if (strpos($link, 'rel') === false) {  
  16.         $link = preg_replace("%(href=S(?!$site_link))%i", 'rel="nofollow" $1', $link);  
  17.     } elseif (preg_match("%href=S(?!$site_link)%i"$link)) {  
  18.         $link = preg_replace('/rel=S(?!nofollow)S*/i', 'rel="nofollow"', $link);  
  19.     }  
  20.     return $link;  
  21. }  

以上代码中的第 1 、 3 行的作用是针对 WordPress 文章内容和 WordPress 评论内容的,大家可以根据自己的需求适当添加删除,不需要给文章内的外链添加 nofollow 的就可以注销或者删除掉第一行的代码即可