28 Грудень 2011
2 287
Рубрика: код

JS: делаем внешнюю ссылку внутренней

Многие из нас, дорогие друзья, категорически не любят сеошников, как черных, так и белых, а проще говоря, людей, которые так или иначе влияют (или пытаются влиять) на позиции сайтов в выдаче поисковиков. Методы их работы не всегда прекрасны, но, увы, современный интернет вряд ли сможет нормально развиваться без влияния на выдачу.

Кстати, белых сеошников не бывает. Любая попытка влияния на выдачу уже является нарушением правил работы поисковика, которые он сам себе придумал.

И если в русско/украинскоговорящем сегменте задача продвигателя «поднять позиции» сайта, то в штатах цель покупки внешних ссылок это «дать поисковику понять», что новый сайт достоин большего внимания, чем тот, который обходится без покупки ссылок, не более. Ведь в любом случае учитывается основной фактор — уникальный контент, написанный людьми для людей. А если его нет, покупай/не покупай, толку не будет.

К чему это я? Среди моих читателей есть вебмастера, которые некоторые исходящие ссылки на своих сайтах делают внутренними. Делается это разными способами. Например, можно кодировать их и получать что-то типа /go/a3fdN68ghs, при клике на которую откроется не пойми что. Или можно делать редирект через htaccess или серверный скрипт, который ссылку типа /go.php?twitter.com будет перенаправлять на твиттер, а для поисковиков такая ссылка будет внутренней. Так вот, решения это некрасивые. И если вам уж пришлось делать внешнюю ссылку внутренней, то лучше сделать это элегантно, к тому же это довольно легко.

Обработка ссылок

Задача: сделать некоторые внешние ссылки внутренними, оставив вид ссылки читаемым. Воспользуемся jquery. Если библиотека у вас не подключена, подключайте последнюю версию кодом:

<script src="http://code.jquery.com/jquery-latest.min.js"></script>

Далее все ссылки, которые должны быть внутренними, но будут вести на внешние сайты, мы ставим таким образом:

<a href="#" class="external" title="twitter.com/dedushkaa">twitter.com/dedushkaa</a>

Для поисковика такая ссылка будет внутренней. Для пущего эффекта можно добавить атрибут rel=’noindex, nofollow’. Дальше мы напишем скрипт, который все ссылки с классом external будет обрабатывать и приводить к виду обычной ссылки. Скрипт выглядит так:

<script>
$(document).ready(function(){

$(".external").each(function() {
var ext = $(this).attr("title");
if (ext) {
$(this).attr("href","http://" + ext);
}
});

});
</script>

Т.е. адрес, куда перейдёт человек, мы сохраняем в атрибуте title, а внешняя ссылка остаётся внутренней. Внешне ссылка будет выглядеть как обычная и человек не будет путаться, куда он попадёт после клика. Ссылочный вес остаётся на странице.

Зачем это?

В результате мы получили скрипт, аналогичный плагинам jExt и им подобным. А теперь хочу поделиться мыслями, почему не надо прятать все исходящие ссылки. Если вы хотите, чтобы другие блоггеры ссылались на вас, начните с себя. Не прячьте ссылку на сайт человека только для того, чтобы яндекс видел минимум исходящих линков с домена. Правила хорошего тона подразумевают, что если вы ссылаетесь на другой сайт, то вероятно и другие сайты рано или поздно будут ссылаться на вас. Конечно, если у вас будет на что ссылаться. Поэтому работайте над контентом и не злоупотребляйте этим инструментом.

Прячьте исходящие ссылки только на сайты, которые бессмысленно делать внешними. Всегда давайте человеку понять, куда он попадёт после перехода по ссылке, это тоже относится к хорошему тону.

Спасибо, что читаете мой блог :). Желаю успехов и с наступающим новым годом!

PS: если вы будете использовать этот скрипт в блоге, то обратите внимание, что ссылки в rss не будут обрабатываться. А виной тому что ридер берёт только, контент записи, не обрабатывая скрипты страницы. Если же открыта отдельная страница, ссылки отображаются как задумано.

Тепер я хочу бачити коментарі 6