Як закрити посилання від індексації - 100% спосіб закриття зовнішніх і внутрішніх посилань на jQuery AJAX

  1. Способи заборони індексації посилань
  2. Як користуватися і живий приклад Неіндексований посилань
  3. А що думають про це пошуковики?

Привіт друзі Привіт друзі. Давно я вас не радував новими постами, тут справи, робота, стартапи, ну, ви розумієте. Зате сьогодні буде більш ніж корисний і практичний пост про те, як закрити будь-яке посилання від індексації, зовнішню або внутрішню, не має значення, важливо, що вона не буде забирати і передавати вагу.

Не я перший і не я останній, хто експериментує зі приховуванням посилань. Багато експериментів вже було, в тому числі багато неуспішних. А наш успішний :) Інакше б я і не поділився з вами результатами!

Відразу хочу висловити свою подяку всім форумчанам, хто брав участь в експерименті, а особливо Паші Белоусову, ви його знаєте по ніку Пафнутій. Паша запропонував початковий варіант, я його трохи модифікував, так чи інакше, всі варіанти я викладу в пості, ви виберете сподобався. Так, заходите в гості на Пашин блог і підписуйтесь на нього в Тві йому буде приємно.

Отже, що нам знадобиться для заборони індексації посилань - підключена бібліотека jQuery (Паша каже, що потрібна версія 1.7+), HTML5 (але можна і без цього обійтися) і зовсім базові знання html і css. Коротше, все простіше простого.

Відповідна тема на форумі і обговорення - http://talk.alaev.info/topic/132/
Історія експерименту і корисна інформація - http://talk.alaev.info/topic/136/
Не соромтеся приєднуватися на форумі, у нас там періодично виникають дуже навіть цікаві теми.

Принцип роботи методу гранично простий - при кліці на певний елемент (в нашому випадку нібито посилання) відбувається відкриття вікна, тобто те ж саме, що і при кліці на звичайне посилання. Важливо вказати, що закривається від індексації тільки посилання, її анкор буде прекрасно індексуватися як звичайний текст.
Отже ...

Способи заборони індексації посилань

Наведу кілька варіантів, а ви вибирайте, який вам до душі.
Всі способи робочі, принципової разници між ними немає ніякої.

Варіант №1 - Найперший запропонований Пашею спосіб на HTML5

Код посилання на сторінці:

<A href = "#" class = "link" data- link = "http://goo.gl"> зовнішнє посилання </ a>

<a href="#" class="link" data-link="http://goo.gl"> зовнішнє посилання </a>

Скрипт, який буде обробляти посилання і відкривати її:

<Script> $ ( 'a.link') .click (function () {window. Open ($ (this) .data ( "link")); return false;}); </ script>

<Script> $ ( 'a.link'). Click (function () {window.open ($ (this) .data ( "link")); return false;}); </ script>

У цьому варіанті вам не треба буде робити ніяких додаткових доробок стилів в css, наша посилання буде виглядати як і всі інші «нормальні» посилання.

Варіант №2 - Альтернативний варіант від Паші без використання HTML5

Код посилання на сторінці:

<A href = "#" class = "link" rel = "http://goo.gl"> зовнішнє посилання </ a>

<a href="#" class="link" rel="http://goo.gl"> зовнішнє посилання </a>

Скрипт, який буде обробляти посилання і відкривати її:

<Script> $ ( 'a.link') .click (function () {window. Open ($ (this) .attr ( "rel")); return false;}); </ script>

<Script> $ ( 'a.link'). Click (function () {window.open ($ (this) .attr ( "rel")); return false;}); </ script>

Варіант №3 - Мій варіант без використання структури <a href=""> </a>

Код посилання на сторінці:

<Span class = "hidden-link" data- link = "http://goo.gl"> зовнішнє посилання </ span>

<Span class = "hidden-link" data-link = "http://goo.gl"> зовнішнє посилання </ span>

Скрипт, який буде обробляти посилання і відкривати її:

<Script> $ ( '.hidden-link') .click (function () {window. Open ($ (this) .data ( 'link')); return false;}); </ script>

<Script> $ ( '. Hidden-link'). Click (function () {window.open ($ (this) .data ( 'link')); return false;}); </ script>

Мій варіант 100% не викличе ніяких підозр у пошукача, так як навіть структурно в коді немає посилання, а просто шматок тексту (він же анкор) виділено спання <span>, що досить часто використовується при розмітці документів.

Однак і відображатися така «посилання» буде як звичайний текст на сторінці. Доведеться пошаманити з css, щоб імітувати посилання. Наприклад, додати в свій css:

span .hidden-link {color: # 00ff00; / * - колір посилання - * / text-decoration: underline; / * - підкреслення - * / cursor: pointer; / * - покажчик у вигляді пальця - * /}

span.hidden-link {color: # 00ff00; / * - колір посилання - * / text-decoration: underline; / * - підкреслення - * / cursor: pointer; / * - покажчик у вигляді пальця - * /}

UPD 13 листопада 2012

Варіант №4 - Ще один варіант приховування посилання (від Діми Dimox)

Код посилання на сторінці (такий же як і в моєму варіанті):

<Span class = "hidden-link" data- link = "http://goo.gl"> зовнішнє посилання </ span>

<Span class = "hidden-link" data-link = "http://goo.gl"> зовнішнє посилання </ span>

Скрипт, який буде обробляти посилання і відкривати її:

<Script> $ ( '.hidden-link') .replaceWith (function () {return '<a href="' + $( this) .data ('link') +'">' + $ (this). text () + '</a>';}) </ script>

<Script> $ ( '. Hidden-link'). ReplaceWith (function () {return '<a href="'+$(this).data('link')+'">' + $ (this). text () + '</a>';}) </ script>

Відмінність цього способу від мого в тому, що js-скрипт змінює на сторінці html-код «нібито» посилання на нормальну посилання після повного завантаження документа. Тому ніяких правок в css вносити не доведеться, а посилання буде відкриватися як і звичайна.
Спосіб так само пройшов перевірку експериментом - посилання не індексується і не бачиться пошуковими роботами і, соответстенно, не враховується.

UPD 18 грудня 2012

Варіант №5 - Універсальний варіант приховування будь-якого контенту, наприклад, картинок

Варіант був запропонований мені поштою одним з читачів, автором блогу www.seorubl.ru :

Натрапив на ваш пост, почав розбиратися і зіткнувся з проблемою того, що варіант запропонований Дімою Dimox, не працює в тому випадку, якщо в анкорі посилання варто картинка. А такі варіанти досить часто зустрічаються: лічильники, інформери, партнерські банери. Тому пропоную використовувати замість методу .text () метод .html (), він буде більш універсальним.

Код елемента, в даному випадку посилання, на сторінці, буде такою:

<Span class = "hidden-link" data- link = "http://goo.gl"> зовнішнє посилання </ span>

<Span class = "hidden-link" data-link = "http://goo.gl"> зовнішнє посилання </ span>

* - Щоб закрити картинку, в коді, зазначеному вище, необхідно замінити «зовнішнє посилання» на код <img src = "...">.

Скрипт, який буде обробляти посилання або будь-який інший елемент:

<Script> $ ( '.hidden-link') .replaceWith (function () {return '<a href="' + $( this) .data ('link') +'">' + $ (this). html () + '</a>';}) </ script>

<Script> $ ( '. Hidden-link'). ReplaceWith (function () {return '<a href="'+$(this).data('link')+'">' + $ (this). html () + '</a>';}) </ script>

Як ви розумієте, відмінність даного способу від всіх інших в тому, що в скрипт можна «заховати» не тільки посилання, але і картинку з посиланням або ще що-небудь. Все перевірено - все працює :)

NB: Тут в коментарях підказали ще більш універсальний варіант, при використанні якого на виході отримаємо і картинку і посилання і тайтл до заслання - # Comment-13685 .

UPD 6 грудня 2018

Варіант №6 - Новомодний Post-Redirect-Get спосіб

Варіант був запропонований мені в коментарі користувачем DrMax, автором однойменного блогу:

Алаіч, привіт! Довгий час (роки) відправляв на цю сторінку всіх спраглих просвітлення в плані закриття посилань скриптами від індексації.
Хочу запропонувати ще один спосіб, правда не скриптами, але дає 100% гарантію, що посилання не буде проіндексована.
Це новомодний Post-Redirect-Get спосіб, коли ми підсовує відвідувачеві замість посилання кнопку від форми (привівши її за допомогою CSS до виду звичайної посилання) і відправляємо POST запит на сервер, отримуємо звідти сторінку для редиректу і виконуємо GET запит для оновлення інформації.

Повна технічна інформація з прикладами реалізації ось тут: http://drmax.su/prg-pattern-links.html .

Сподіваюся це буде хорошим доповненням до цієї прекрасної і потрібній сторінці. ;)

Залишаю тут тільки посилання на пост з докладним описом Post-Redirect-Get методу, тому що процитувати його сюди не представляється можливим.

Як користуватися і живий приклад Неіндексований посилань

Коротко про те, як користуватися всім цим господарством для закриття зовнішніх або внутрішніх посилань. «Код посилання на сторінці" - це треба вставляти в тексті, як і звичайне посилання, «Скрипт» - цю конструкцію можна додати просто в кінці тексту на сторінці, або ще краще відразу додати в шапку сайту в <head> ... </ head> , там, де і інші наші скрипти підключаються. Якщо раптом щось не працює, то спробуйте конструкцію зі скриптом підключити в кінці сторінки, перед закриває </ body>.

Тепер для наочності вставлю все три варіанти, описаних вище, щоб ви могли їх перевірити, що все працює.

Варіант №1, посилання - зовнішнє посилання
Варіант №2, посилання - зовнішнє посилання
Варіант №3, посилання - зовнішнє посилання (посилання виглядає як текст, тому що я не прописував стилі)
Варіант №4, посилання - зовнішнє посилання

Протикали і переконалися, що посилання працюють? Відмінно.

А що думають про це пошуковики?

Напевно вас цікавить, що ж думають пошуковики про все цій справі, зрозуміло, я покажу зараз.

По-перше, варто сказати, що ми вибрали з хлопцями піддослідний сайт, без єдиного посилання на нього (дивилися в панелі вебмастера). За даними на сьогоднішній день (з моменту початку експерименту пройшло вже більше 20 днів) нових посилань не з'явилося.

Сайти донори, на сторінках яких ставилися «закриті» посилання, мали наскрізну посилання, тобто посилання була на всіх сторінках і проіндексувалася в наступний же апдейт. Це можна було легко перевірити, зробивши пошук по анкор.

Я ж зі свого блогу поставив тільки одне посилання з одного з постів зі своїм унікальним анкором. Погляньмо на результати!

Запит по унікальному анкор в Яндексі не дав ніяких результатів, крім мого ж блогу, що свідчить про те, що наша «посилання» проіндексувалася:

Аналогічний запит в Google показує нам точно таку ж картину:

Тепер про те, що б було, якщо експеримент провалився. Очікувано було б побачити «Знайдений за посиланням».

Ось приклад для Яндекса, де я взяв звичайне посилання з того ж поста, де було посилання-експеримент і отримав наступну картину:

Ось приклад для Яндекса, де я взяв звичайне посилання з того ж поста, де було посилання-експеримент і отримав наступну картину:

Аналогічно і для Google:

Аналогічно і для Google:

Сподіваюся, це звучить і виглядає переконливо, згодні, друзі?

Тепер і ви знаєте, як на 100% успішно можна закрити посилання від індексації досить простим способом.

Що найважливіше, цей спосіб відмінно масштабується на весь сайт, наприклад, той же DLE взяти, можна в скрипті, який закриває в leech зовнішні посилання змайструвати таку конструкцію, і ви позбудетеся від посилань повністю. Прикладів, куди це застосувати, можна знайти цілу купу, тут тільки ваша фантазія!

UPD 23.05.2014 Не дивлячись на заяви Google про те, що роботи навчилися краще розуміти і застосовувати CSS і виконувати JavaScript - Understanding web pages better - наші способи закриття посилань працюють прекрасно! Для цього експериментальні сторінки були завантажені в панель вебмастера Google і відправлені роботу на обробку, а після чого перевірені. Як то кажуть, «Все чисто», span на сторінках видно, але посилання в ньому немає! Користуйтеся на здоров'я!

Удачі в просуванні і оптимізації, друзі!

З повагою, Олександр Алаев

А що думають про це пошуковики?