Site icon Vavik96

Автоматическое добавление атрибута “nofollow” для внешних ссылок

Значение nofollow запрещает поисковой системе переходить по ссылкам на данной странице или по конкретной ссылке.
По умолчанию WordPress не добавляет автоматически атрибут rel=”nofollow” к внешним ссылкам в содержании записи. Но такое положение легко исправить.
Скопируйте ниже приведенный код и вставьте его в файл functions.php вашей темы. Как только вы сохраните изменения все внешние ссылки в ваших записях получат атрибут rel=”nofollow”.

add_filter('the_content', 'auto_nofollow');
 
function auto_nofollow($content) {
    //return stripslashes(wp_rel_nofollow($content));
 
    return preg_replace_callback('/<a>]+/', 'auto_nofollow_callback', $content);
}
 
function auto_nofollow_callback($matches) {
    $link = $matches[0];
    $site_link = get_bloginfo('url');
 
    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)) {
        $link = preg_replace('/rel=S(?!nofollow)S*/i', 'rel="nofollow"', $link);
    }
    return $link;
}

Источник

Exit mobile version