Сравнение выдачи по регионам: Я.Вебмастер.

Alek$ чт, 23/04/2009 - 19:35

Не секрет, что с выходом Арзамаса сообщество сеошников пришло в некоторое смятение. Одним из популярных поводов для оного было как нормально продвигать сайты и отчитываться перед заказчиком, если у тебя выдача одна, у заказчика - другая, а у потенциального клиента - третья.

И вот, спустя две недели после релиза, Яндекс наконец анонсировал новый инструмент для сравнения выдачи по разным регионам. Однако, тут имеет место небольшой казус, о котором я подробно расскожу в конце поста, из-за которого этот инструмент работает только в Опере. Если вы, как и я, пользуетесь Firefox или, не дай бог, IE, то выход все равно есть, даже два.

Первый требует проделать немного манипуляций ручками, благо они совсем простые:

  1. Открываете в Яндексе выдачу по интересующему вас вопросу.
  2. Дописываете в адресной строке параметр lr=<код_региона>, где код региона для Москвы - 213, Питера - 2, всей прочей России - 225, Украины - 187 и Казахстана - 159.

Все, желанная выдача перед вами.

Однако, этот вариант совершенно не нагляден и напряжен для таких лентяев, как вы и я. Поэтому я написал небольшой скриптик, который устраняет упомянутый казус и позволяет вам сравнивать удобно выдачу, как оно было задумано в изначальном инструменте от Яндекса. Как им пользоваться:

  1.  Скачиваем скрипт.
  2. Меняем расширение на .php
  3. Заливаем на сервер и открываем в браузере.
  4. Далее все интуитивно понятно.

Хинт: для работы скрипта нужно, чтобы в php.ini стояло allow_url_fopen=On.

Ну а теперь об этом самом казусе, на который я ссылался в начале. Суть в следующем: региональная выдача  загружается фо вреймах, а у яндекса испокон веков есть скрипт, запрещающий открывать его в них. Находится он в самом начале файла http://css.yandex.net/css/search/r9/_serp.js:

if((self.parent&&!(self.parent===self))&&(self.parent.frames.length!=0)){self.parent.location=document.location}

Забавно, что в Опере, кстати переброс не происходит. Причина в том, что предшествующий редиректу код непосредственно в теле страницы вызывает ошибку Security error: acodeempted to write protected variable и все дальнейшие скрипты не отрабатывают:

<script type="text/javascript">
var code = {
// Вырезано
dsuf: "ru",
// Вырезано
}
document.domain = (code.dsuf == 'ua') ? 'yandex.ua' : 'yandex.ru'; // Вот тут возникает ошибка
</script>

Из этого, кстати, можно сделать вывод, что программисты Яндекса любят Оперу, иначе они бы обязательно заметили проблему. :)

UPD. Яндексоиды баг починили.



Trackback URL for this post:

http://nevkontakte.org.ru/trackback/322
Прикрепленный файлРазмер
index.php_.txt2.37 кб
Михаил вс, 26/04/2009 - 14:32

Мда интересный баг, меня сразу перебрасывает на страницу поиска слова президент =)) Жаль что у гугла такого нет :(

Костя ср, 06/05/2009 - 18:49

Исправили они уже этот баг=) Как всегда куда то спешили и накрутили черти чего

Alek$ ср, 06/05/2009 - 18:58

На то он и Яндекс, чтобы баги были :)

SEOMON ср, 13/05/2009 - 19:42

У яндекса много багов :)

Alek$ ср, 13/05/2009 - 19:47

Может и расскажете еще про парочку? ;)



Отправить комментарий

  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Доступны HTML теги: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img> <b> <s> <u> <p> <h3> <br> <strike> <sup> <pre> <h4> <hr>
  • Строки и параграфы переносятся автоматически.
  • You may use [inline:xx] tags to display uploaded files or images inline.
CAPTCHA
Вы точно не бот?
3 + 18 =
Without JavaScript you won't pass captcha test, sorry. Solve this simple math problem and enter the result. E.g. for 1+3, enter 4.