SEOHide: что это и зачем нужен? Методы закрытия ссылки и текста от поисковых систем

Обновлено: 27.02.2019
Технология SEOHide

SEOHide – это технология, применяемая для скрытия контента и ссылок посредством скрипта JavaScript. То есть, ссылки и текст скрываются в коде страницы, чтобы поисковый бот не смог их увидеть, но при этом они продолжают работать для посетителей ресурса.

Зачем нужен?

При помощи nofollow и noindex невозможно полноценно управлять анкорным и статическим весом ссылки, если речь идет о передаче веса непосредственно за счет внутренней перелинковки. Nofollow нельзя использовать, чтобы скрывать внутренние ссылки, а Noindex применяется исключительно для российского поисковика и не подходит для Google.

В наши дни поисковики уже могут работать с простым JavaScript. Но если текст или ссылку, которую вы хотите закрыть от индексации, использовать в скрипте определенным способом, то для роботов контент станет невидимым. Это и есть SEOHide, применяющийся для решения нескольких задач:

  1. Управления анкорным и статическим весом.
  2. Уменьшения числа вхождений ключевых слов в тексте и ссылках, чтобы не допустить переспама.
  3. Влияния на текстовое ранжирование: noindex работает только для Яндекса, а seohide – в том числе и для Google.

С помощью скрипта

Благодаря JavaScript технология позволяет скрывать ссылки и текст несколькими способами.

Реализация 1

1. Создайте файл /scripts.js, и пропишите следующий код:

function base64_decode( data ) {
    var b64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
    var o1, o2, o3, h1, h2, h3, h4, bits, i=0, enc='';
    do { 
        h1 = b64.indexOf(data.charAt(i++));
        h2 = b64.indexOf(data.charAt(i++));
        h3 = b64.indexOf(data.charAt(i++));
        h4 = b64.indexOf(data.charAt(i++));
        bits = h1<<18 | h2<<12 | h3<<6 | h4;
        o1 = bits>>16 & 0xff;
        o2 = bits>>8 & 0xff;
        o3 = bits & 0xff;

        if (h3 == 64) enc += String.fromCharCode(o1);
        else if (h4 == 64) enc += String.fromCharCode(o1, o2);
        else enc += String.fromCharCode(o1, o2, o3);
    } while (i < data.length);
    return enc;
}

function replaceHLink() {
    $('.hlink').each(function() {
        $(this).removeClass('hlink').addClass('olink');
        var arr = $.map(this.attributes, function (attribute) {
            if (attribute.name != 'data-href') {
                return attribute.name + '="' + attribute.value + '"';
            }
        });

        $(this).replaceWith('<a ' + arr.join(' ') + ' href="' 
        + base64_decode($(this).data("href")) + '">' + $(this).html() + '</a>');
    });
};

$(function(){
    replaceHLink();
});

2. Подключите файл в <head> страницы.

3. Зайдите в Robots.txt и закройте файл scripts.js от индексации, прописав правило

Disallow: /scripts.js

5. В коде документа теги всех ссылок, которые необходимо скрыть от ботов, меняются с <a> на <span>, а их URL кодируются с помощью base64 и прописываются к атрибуту data-href.

Пример ссылки до:

<a href="/ssilka">
Ссылка
</a>

И после:

<span class="hlink" data-href="<?php echo base64_encode('/ssilka); ?>">
Ссылка
</span>

Когда страница будет загружаться в браузере, все теги с классом hlink поменяются на ссылки с классом olink.

Также к ссылкам нужно прописать атрибут nofollow и обрамить их в <noindex>.

Реализация 2

Для второго способа вам также понадобится работать с HTML кодом сайта. Нам понадобится base64, качаем скрипт отсюда и подключаем его на сайт.

Далее берем код непосредственно SEOHide, закрывающего ссылки:

$(document).ready(function(){
var seoHrefs = {'f34bb62f734d1cecaa4de6a8b8efab52':'aHR0cHM6Ly93ZWJtYXN0ZXJpZS5ydS9zZW8vc3NpbGtpL3Nlb2hpZGU='};
$('[hashString]').each(function(){
var key = $(this).attr('hashString');
if($(this).attr('hashType') == 'href' && seoHrefs.hasOwnProperty(key)){
$(this).attr('href', Base64.decode(seoHrefs[key]));
}
});
});

Код:

aHR0cHM6Ly93ZWJtYXN0ZXJpZS5ydS9zZW8vc3NpbGtpL3Nlb2hpZGU=

означает закодированную нашу ссылку https://webmasterie.ru/seo/ssilki/seohide в base64.

А этот код:

f34bb62f734d1cecaa4de6a8b8efab52

будет применяться в HTML к ссылке.

Это значит, что технология будет отыскивать по страницам ресурса все ссылки с кодом f34bb62f734d1cecaa4de6a8b8efab52 и подставлять вместо BASE64 кода реальную ссылку. Такой подход позволяет скрывать ссылки от роботов, но оставлять их видимыми для пользователей.

Для вставки ссылки используем следующую конструкцию:

<a hashstring="f34bb62f734d1cecaa4de6a8b8efab52" hashtype="href" href="#">Статья про SEOHide</a>

Как и в реализации №1, seohide.js нужно заблокировать в файле robots при помощи атрибута Disallow.

Для закрытия текста

Два перечисленных выше метода работают для скрытия ссылок, но ведь технология позволяет закрывать от индексации еще и текст. С этим вам поможет код:

$(function(){
	var seoContent = {"qe56tt3df2c0a4db1f1d5614545acmmm":"U2VvV2luZCAtINC/0YDQvtC00LLQuNCz0LDRjiDRgdCw0LnRgtGLINCyINCi0J7QnyAxMA==",
	"13yyy123456qqq4573d9e6cafe8f888b":"0JHRg9C00YMg0YDQsNC0INCS0LDRiNC40Lwg0LrQvtC80LzQtdC90YLQsNGA0LjRj9C8INC6INC00LDQvdC90L7QuSDRgdGC0LDRgtGM0LUh"};
	var seoHrefs = {"f34bb62f734d1cecaa4de6a8b8efab52":"aHR0cDovL3d3dy5zZW93aW5kLnJ1L2tvbmt1cnN5LWktYWtjaWkva29ua3Vycy10b3Ata29tbWVudGF0b3Jvdi8="};
	var $elements = $("[data-key]");
	for(var i = 0, count = $elements.length; i < count; i++) {
		var $element = $elements.eq(i);
		var key = $element.data("key");
		switch($element.data("type")) {
			case "href":
				$element.attr("href", Base64.decode(seoHrefs[key]));
				break;
			case "content":
				$element.replaceWith(Base64.decode(seoContent[key]));
				break;
		}
	}
});

SEOHide для WordPress

Плагин SEOHide для WordPress

В 2018 году вышел плагин SEOHide для WordPress от Петрозаводского Владимира, запрещающий передачу веса по ссылкам рецепиентам. Еще он позволяет исключить ссылки на нежелательный контент с вашего ресурса, при этом никак не влияет на его работу и удобство использования посетителями. Более того, за счет скрытия от индексации внутренних линков на сайте плагин позволяет грамотно распределить ссылочный вес. Работает плагин просто, обрамляете ссылку шорткодом и все.

Возможны ли санкции за SEOHide?

На первый взгляд может показаться, что SEOHide это одно и тоже, что клоакинг. По сути да, так как контент, отображаемый для пользователей и поисковиков немного отличается, но в том то и дело, что лишь самую малость. А причиной тому выступают проблемы самого поисковика, то есть по факту это система не может нормально прочитать JavaScript, а не вы умышленно хотите показать роботам один материал, а пользователям – совершенно другой.

То есть это проблема поисковой системы, что она не может прочитать ваш Яваскрипт, и вы не получите за это санкции.

Малая доля опасения все же есть, но разработчик плагина для WordPress лично проводил эксперимент для нескольких сайтов, продвигаемых различными способами, то есть скрывал некоторые внутренние и внешние ссылки методом seohide и в результате ни один из них не попал под санкции. Наш опыт тоже показывает, что бояться нечего, случаи получения санкций за скрытие ссылки методом SEOHide мы не встречали.

Александр Овсянников ака Интернет Мажор
Занимаюсь продвижением и заработком на сайтах с 2009 года.
Добавить комментарий