您想尝试以下操作(未经测试):
// Nofollow in content
$author_id = get_the_author_meta( \'ID\' );
add_filter(\'the_content\', \'my_nofollow\');
function my_nofollow($content) {
//return stripslashes(wp_rel_nofollow($content));
return preg_replace_callback(\'/<a[^>]+/\', \'my_nofollow_callback\', $content);
}
function my_nofollow_callback($matches, $author_id) {
$link = $matches[0];
$site_link = get_bloginfo(\'url\');
if ($author_id === 4) {
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) && (strpos($link, \'rel\') === false)) {
$link = preg_replace(\'/rel=\\S(?!nofollow)\\S*/i\', \'rel="nofollow"\', $link);
}
}
return $link;
}
注意:这是基于我在我的一个网站上使用的nofollow函数,我刚刚为添加了一个条件
if ( is_author () )
在那里