Вариантов закрытия внешних ссылок от индексации с помощью javascript множество.
Начина от способов на чистом javascript:
function goToPage(sPage) {
window.location.href = sPage;
}
Код ссылки на сайте выглядит так:
<a href="javascript:goPage('/url_to_page')"></a>
И заканчивая разными вариациями с использованием jQuery:
jQuery(function($) { jQuery('a.linknoindex').click(function(){window.open($(this).data("link"));return false;}); });
В данном случае ссылка будет выглядеть так:
<a href="#" class="linknoindex" data-link="http://goo.gl">внешняя ссылка</a>
Если внешних ссылок немного, то легко можно пройти все вручную и провести соответствующие изменения на сайте. Но очень часто таких ссылок на странице очень много и располагаются они в статьях, описаниях товаров или других блоках сайта изменение которых будет требовать большого количества времени.
Для ускорения процесса воспользуемся php и функцией preg_replace и функциями работы с буферизацией вывода:
<?php
//удаление внешних ссылок
function in_link($buffer){
return preg_replace("~<a([^>]*?)href=['\"]([a-z0-9]++:\/\/(?![a-z0-9\.]*?site\.ru).*?)['\"](.*?)>(.*?)<\/a>~si", "<a\\1 class=\"linknoindex\" href=\"#\" data-link=\"\\2\" \\3>\\4</a>", $buffer);
}
ob_start("in_link");
?>
Текст с внешними ссылками
<?php
ob_end_flush();
?>
site.ru - это наш сайт, ссылки от индексации на который мы естественно закрывать не хотим.
Ну и на этом все. Надеюсь данный скрипт Вам поможет.
З.Ы. А еще мы пишем много полезной информации в блоге Стократ. Добро пожаловать.