WordPress 添加友情链接设置 nofollow 属性

来自:互联网
时间:2019-07-14
阅读:

WordPress 链接功能可以用来实现友情链接的管理,也可以被用于开发导航,所以用起来也都非常顺手,同时还支持设置链接的 XFN(链接关系),但是遗憾的是几乎包括了所有关系属性,却没有支持设置 nofollow 这个对搜索引擎有用的关系,所以还得动手处理一下。

WordPress link rel nofollow

WordPress 站点只需要将以下代码添加到你当前主题的 functions.php 文件中就可以啦。

//WordPress 友链支持设置 nofollow 属性
add_action('load-link.php', 'fanly_blogroll_nofollow');
add_action('load-link-add.php', 'fanly_blogroll_nofollow');
function fanly_blogroll_nofollow(){
	add_action('add_meta_boxes', 'fanly_blogroll_add_meta_box', 1, 1);
	add_filter('pre_link_rel', 'fanly_blogroll_save_meta_box', 10, 1);
}
function fanly_blogroll_add_meta_box(){
	add_meta_box('fanly_blogroll_nofollow_div', 'Nofollow', 'fanly_blogroll_inner_meta_box', 'link', 'side');
}
function fanly_blogroll_inner_meta_box($post){
	$bookmark = get_bookmark($post->ID, 'ARRAY_A');
	if (strpos($bookmark['link_rel'], 'nofollow') !== false) { $checked = ' checked="checked"';} else { $checked = ''; }
	echo '<label><input value="1" type="checkbox" name="fanly_blogroll_nofollow_checkbox"'.$checked.'/>是否添加 Nofollow 属性</label>';
}
function fanly_blogroll_save_meta_box($link_rel){
	$rel = trim(str_replace('nofollow', '', $link_rel));
	if ($_POST['fanly_blogroll_nofollow_checkbox']) { $rel .= ' nofollow'; }
	return trim($rel);
}
返回顶部
顶部