Автор: Дмитрий Новак, физик и фрилансер из Минска. Основное направление – программирование и оптимизация сайтов.
Ведущий молодого блога exp-seo.ru.
В своей гостевой заметке Дмитрий делится скриптом для скрытия ссылок на странице от поисковых систем. Метод не совсем белый, так как присутствует элемент обмана, поэтому, применение данной идеи может быть рискованным шагом! Тем не менее, в ряде случаев, скрипт может оказаться полезным для вебмастеров.
При знакомстве с результатами эксперимента по индексации в Google ссылок, скрытых через JavaScript, казалось бы не придется получать описанную информацию опытным путем. Однако, при возникновении потребности применения техники скрытия ссылок в реальном проекте, стали очевидны следующие проблемы технического плана:
- Скрытие динамически генерируемых ссылок. Если js должен быть вынесен в отдельный файл, то встает проблема динамической генерации js файлов.
- Сложности для редакторов. Если сайт наполняется нанятым журналистом, сложно ожидать, что он умеет работать с js.
- Большие трудозатраты на ручное скрытие ссылок.
В качестве подопытного сайта для разработки удобного метода скрытия ссылок был выбран собственный seo блог exp-seo.ru. Можете обнаружить самостоятельно, какие ссылки на главной странице скрыты описанным ниже образом.
Скрытие ссылок от Google через JavaScript
Для решения описанной выше проблемы был разработан нехитрый скрипт, успешно скрывающий ссылки. Как это работает?
1. Ссылка, которую мы желаем скрыть оформляется следующим образом:
<span class="linkrep" title="/some-page">Анкор ссылки</span>
2. При загрузке документа подключаем внешний файл (закрытый от индексации через robots.txt) со скриптом, который заменяет все теги SPAN с классом linkrep на ссылки и устанавливает атрибут href=title. Сам скрипт занимает всего несколько строк (используется jQuery, но можно использовать и чистый js).
Текст скрипта:
$(document).ready(function(){
$(".linkrep").each(function(){
$(this).replaceWith('<a href="'+$(this).attr("title")+">'+$(this).html()+'</a>');
});
});
В заключение можно сказать, что скрытие кода скрипта во внешнем файле, закрытом от индексации в robots.txt, решает задачу его разбора поисковыми системами. Вставка скрытых ссылок в виде тега SPAN позволяет с легкостью генерировать их в общем коде создания страниц на сервере. Простой синтаксис создания ссылок дает возможность использовать их авторам не знакомым с JavaScript.
А закрываете ли вы ссылки от поисковиков и если да, то как?


Марьин Антон
Январь 24, 2012 at 12:17
1Насколько мне известно ни одна из ПС не выполняет JS вынесенные в отдельный файл.
Использую почти такой же метод скрытия ссылок.
Вот еще один метод скрытия ссылок http://www.page-weight.ru/theory/article/4/
Главное не забывать использовать сие только с умом.
oroom
Январь 24, 2012 at 12:25
2Антон, если посмотреть результаты эксперимента Сергея, то пункт 4 демонстрирует, что Google анализирует js во внешних файлах, если они не закрыты от индексации.
sickboy
Январь 24, 2012 at 12:33
3Да, трудозатраты вполне большие.
Однако, если нужно единоразово закрыть определенные ссылки – способ подходит.
Sergey
Январь 24, 2012 at 17:06
4Если мы говорим о CMS WP, то есть прекрасный плагин который делает все внешние ссылки внутренними. http://www.chanishvili.org/rc-redirector/
И открывает ссылки на конкретные сайты, или же используя служебное значение тега rel=”“ отменяющee обработку ссылки.
ИМХО намного проще открыть нужную ссылку, чем закрывать не нужные.
Лена
Январь 24, 2012 at 17:40
5Никогда не скрывала ссылки… Этот метод вроде легкий, попробую.
Olejka
Январь 24, 2012 at 19:03
6я жумаю что поисковики быстро такой метод спалят!
Atamovich
Январь 24, 2012 at 21:13
7На мой взгляд, лучше не скрывать ссылки. Поисковики совершенствуются, улучшаются, и, рано или поздно, научатся распознавать… и будет не очень хорошо…
Королев Иван
Январь 24, 2012 at 21:37
8хм… не стал бы использовать такой способ!
какой способ использую я: я оформляю ссылки в ноиндекс и прописываю атрибут нофоллоу
если сайт на ВП, то использую плагин WP-NoRef
если нет, то вручную
artemmian
Январь 24, 2012 at 23:22
9Зачем? не проще ли на пхп набросать кодик и выводить через: href=“r.php?url=http://site.ru
В файл р.пхп вставить редирект через $_GET[‘url’]
файл р.пхп всегда можно убрать из ПС через роботс.тхт
И написать текст: вы переходите траляля сейчас будет перенаправление!
Вот пример: http://artemmian.ru/40-pryachem-vneshnie-ssylki.html
Да и вообще, в большинстве CMS есть плагины, кот. самы скрывают вс!
Андрей
Январь 24, 2012 at 23:55
10Отличная идея, спасибо за наводку… Правда думаю, что в отдельный файл выносить не обязательно, поисковики и так JS не прочитают.
Alekskk
Январь 25, 2012 at 12:15
11burunduk(Алексей Жуков) на серче написал, что такой способ скрытия ссылок уже палиться поисковиками, но есть другие способы скрыть ссылки от ПС.
wmas
Январь 25, 2012 at 23:27
12Не думаю, что способ реально рабочий. Поисковики умеют понимать сформированный JavaScript код, т.е. в данном случае ничего не меняется и они видят ссылку.
Shift предложит правильное решение, т.к. в его примере идёт речь об обработке события, чего поисковики вроде как не обрабатывают.
Зачем всё это надо? Меньше внешних ссылок, больше вес страницы. Тот же rel=nofollow проблемы не решает. Поисковик не следует по ссылке, но вес то передаётся.
Может я что-то и напутал, но где-то как-то так.
alex
Январь 28, 2012 at 07:47
13Этот способ хорош для дорвеев,где js вынесенный в отдельный файл используется для перенаправления юзера на платник или TDS, для белых проектов я бы его применять не стал.(ИМХО)
Анонимус
Январь 28, 2012 at 14:05
14Способ очень рискованный, польза от сокрытия ссылок достаточно сомнительна.
putnik
Январь 28, 2012 at 23:01
15Как уже сказал alex, большинство дорвеев использовали выносной js для перенаправления. Но сейчас, по причине быстрого бана, дорвейщики постепенно отказываются от этого. Так что в белых проектах както стрёмно применять такой метод (имхо)
Telladi
Январь 29, 2012 at 14:37
16Опасный метод, имхо. Если гугл действительно выполняет js, то может случиться так, что даже скрытые от индексации js файлы будут читаться им. На поисковой выдаче они могут и не сказываться, а вот обработать их никто не запретит. В общем, можно за клоакинг получить по башке…
altsupport
Январь 31, 2012 at 02:47
17Хрень. Очень просто проверить. Создайте страницу для теста (две), ссылку на нее поставьте где-нить в подвале и невидимой. Чтобы ее нашел только робот, но не человек. Позакрывайте индексацию. И на скрипт повесьте счетчик (т.е. можно сопоставлением) Ждите. Видите? Не зависимо от запрета – робот забрал файл. Ждите… Видите? Не зависимо от JS – ссылка указанная там посещена. Зашифровали JS? Ждите. Видите? А это уже краулер прошелся.
Китнис
Январь 31, 2012 at 22:21
18Почитала коменты и ужаснулась, такой метод в основном используют дорвейщики. А это уже баном и прочими санкциями попахивает.
Что ж задумаюсь еще над использованием такого скрипта
barkasian
Февраль 2, 2012 at 09:58
19Посетите семинар Алексея Жукова (aka burunduk) там у него таких примеров полно, и как ссылки спрятать и как удалить ссылки с картинки для поисковика, но для пользователя оставить…
Андрей
Февраль 3, 2012 at 09:24
20Я закрываю тегом nofollow, а такой метод рано или поздно может привести сайт под АГС поисковиков, что не есть хорошо.
Алексей
Февраль 5, 2012 at 21:01
21Полезно, если кто-то охотится за PR и ему не важно, какими способами его получить. Но лучше естественный PR, который и дольше держится и пользы от него больше.
Heimdall
Февраль 8, 2012 at 09:51
22Честным вебмастерам скрывать нечего
iKorot97
Февраль 9, 2012 at 12:36
23А я прописую <noindex> и ссылки от поисковиков скрываются.
ZeroXor
Февраль 10, 2012 at 07:18
24Яндекс давно уже отказался от работы с тегом noindex, а гугль (тут могу ошибаться) его не понимал никогда (или наоборот, как понимал, так и понимает). А вот атрибут nofollow работает прекрасно и нет смысла огород городить с JS.
Поисковики хоть и читают JS-файлы, но выполнять JavaScript код поисковики не умеют! Так что не преобразуют они JS-коды в ссылки.
Что же до меня, то сейчас ссылки в комментах у меня в блоге индексируются, но не передают вес (nofollow). А в будущем планирую сделать подгрузку комментов по AJAX. Тогда поисковики вообще не будут индексировать комменты, а для пользователей будет удобная листалка. Ну а для особо отличившихся все-таки запилю виджет лучших комментаторов.
volgofarm
Февраль 11, 2012 at 10:21
25Если все будут скрывать ссылки, то тогда поисковикам следует отказаться от ТИЦ и PR – ведь все на свете ссылки будут скоро “nofollow”! Останутся только платные(((
Android
Февраль 11, 2012 at 10:38
26В течение последнего года постоянно скрывал ненужную для ПСов (точнее, нежелаемую к показу поисковикам) информацию в js самыми разными путями. И ссылки, и некоторые текстики даже..
SoftVK
Февраль 14, 2012 at 17:27
27Хм.. так можно проще редирект через $_GET[‘url’]
Sveta
Февраль 17, 2012 at 15:28
28Лучше всё таки закрывать в nofollow и noindex, а не создавать лишнюю нагрузку скриптами. Тем более если на сайте есть уже скрипты.
Sergey
Февраль 21, 2012 at 11:13
29отличное решение, жалко не работает скрипт…
potter062
Февраль 21, 2012 at 22:53
30Я тоже поддерживаю мнение что честным мастерам скрывать нечего
Андрей
Февраль 22, 2012 at 04:45
31Сделал на чистом html все норм, а вот Drupal не хочет преобразовывать, как ни крути делает ссылку, подскажите, может кто-нибудь знает как исправить?)
sergey
Февраль 22, 2012 at 07:33
32Андрей, видимо особенность друпала – у меня такая же байда. Попробуй совет из первых коментов, там ссылка.