给链接加nofollow属性之方法二

前几天写了一篇《如何给链接加nofollow属性》,之后,禅猫同学Email给我提供了另一种给链接加nofollow属性的方法。经他同意,我特地将其方法发表出来和大家分享下,在此代表广大博友感谢禅猫。

首先,我先介绍下两种给链接加nofollow属性的不同特点和各自优势,效果可以分别参见本站和禅猫的博客。

我的方法——特点:首页与内页同一链接rel属性一致。优势:1、可以给指定链接加nofollow属性。2、不受更换主题影响。缺点:需要修改/wp-admin下文件,不方便日后Wordpress升级。具体操作详见《如何给链接加nofollow属性》

禅猫的方法——特点:首页与内页同一链接rel属性不同,首页友链皆为nofollow。优势:1、友链遭搜索引擎惩罚,本站不会受牵连。2、一劳永逸,方便日后Wordpress升级。缺点:需要修改主题function.php文件,需随更换主题而重新更改文件。具体操作详见下文(以Wordpress 2.7为例):

1、用编辑器打开bookmark-template.php,第51行

function _walk_bookmarks($bookmarks, $args = '' ) {

改为

function _walk_bookmarks_nofollow($bookmarks, $args = '' ) {

2、75行开始

$rel = $bookmark->link_rel;
if ( '' != $rel )
$rel = ' rel="' . $rel . '"';

改为

$rel = 'rel="external nofollow"';
if ( '' != $rel )
$rel = 'rel="external nofollow"';

3、198行

function wp_list_bookmarks($args = '') {

改为

function wp_list_bookmarks_nofollow($args = '') {

4、228行

$output .= _walk_bookmarks($bookmarks, $r);

改为

$output .= _walk_bookmarks_nofollow($bookmarks, $r);

5、239行

$output .= _walk_bookmarks($bookmarks, $r);

改为

$output .= _walk_bookmarks_nofollow($bookmarks, $r);

6、242行

$output .= _walk_bookmarks($bookmarks, $r);

改为

$output .= _walk_bookmarks_nofollow($bookmarks, $r);

7、不要保存,而是将修改过后的整个bookmark-template.php内容复制出来,并粘贴到你模板的functions.php最后,即 ?>之后。

8、上传并覆盖模板的functions.php。

9、继续修改模板,把首页引用友情链接的函数由 <?php wp_list_bookmarks(); ?> 换成 <?php wp_list_bookmarks_nofollow(); ?>

至此,nofollow和正常属性两种友情链接都具备了。

关于<?php wp_list_bookmarks(); ?>(<?php wp_list_bookmarks_nofollow(); ?>)的详细参数请参考Codex上的内容,例如实现首页随机显示10个友情链接的写法是:<?php wp_list_bookmarks_nofollow('limit=10&orderby=rand'); ?>

介绍完毕,两种方法各有优劣,你可以选择适合自己网站的nofollow,也可以结合两种方法一起使用。

  1. 挑个楼少的哈哈··我在博客给别人回复是"哲哲"这个名字,现在百度搜“哲哲”拍第二··按理说评论都有nofollow的··但是好像在nofollow下留言还是有效果的

  2. Pingback: 0blog