Следует ли за window.location.href = 'some_page.html' поисковые системы? - PullRequest
0 голосов
/ 03 апреля 2010

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

Мы собирались изменить его на форму сообщения, чтобы избежать этого. Однако мне кажется, что мы должны просто иметь возможность заменить его на onclick = "window.location.href = 'change_my_language.php'", а не на href = "change_my_language.php". Я прав? Или в настоящее время основные поисковые системы сканируют и отслеживают подобные вещи?

Ответы [ 5 ]

2 голосов
/ 03 апреля 2010

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

<!-- on http://www.example.com/article.php?id=123&language=something-else -->
<link rel="canonical" href="http://www.example.com/article.php?id=123" />

Чтобы избавить поисковые системы от необходимости заходить на другие страницы, не мешало бы добавить rel="nofollow" к ссылкам, чтобы роботы не тратили свое время на их проверку. Тем не менее, тег канонической ссылки по-прежнему жизненно важен, если кто-то ссылается на ваш контент на других языках, чтобы гарантировать, что ваша предпочтительная страница получает рейтинг.

0 голосов
/ 03 апреля 2010

Когда поисковая система проходит через это, она получает слишком сложное представление о сайте.

Это не должно быть проблемой. Пока вы правильно помечаете каждую страницу lang="...", поисковая система должна знать, что с ней делать. С какой реальной проблемой вы столкнулись, которая заставляет вас думать, что поисковые системы смущены «сложной» картой ссылок?

Вы можете дать им карту сайта , если вы действительно хотите быть явным.

Однако мне кажется, что мы должны просто изменить его на onclick = "window.location.href = 'change_my_language.php'", а не на href = "change_my_language.php"

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

В любом случае, что бы вы ни делали, вы должны обязательно оставлять каждую языковую версию на своем собственном URL (например, /en/category/title), а не полагаться на куки-файлы с настройками языка, иначе вы действительно рискуете запутать поисковые системы. , Обычно вы do хотите, чтобы поисковые системы индексировали каждую имеющуюся языковую версию, чтобы получать запросы от пользователей других языков.

0 голосов
/ 03 апреля 2010

Метод POST должен использоваться, когда запрос изменяет состояние сервера, то есть запрос имеет побочные эффекты:

http://www.cs.tut.fi/~jkorpela/forms/methods.html

Нет, поисковые системы не смогут переходить по ссылкам javascript, но POST - более элегантное решение.

0 голосов
/ 03 апреля 2010

Google становится все лучше при разборе JavaScript. Я не думаю, что поисковые системы будут переходить по этой ссылке сейчас ... но чтобы быть более уверенным, что они не следуют, вы можете вместо этого поменять теги привязки на span и использовать onclick = "document.location = 'url'" способ.

Хотя вы можете вместо этого добавить rel = "nofollow" к этим ссылкам. Вы также можете добавить каноническую ссылку на главную страницу.

0 голосов
/ 03 апреля 2010

Я вполне уверен, что поисковые системы не анализируют JavaScript, поэтому любой код, который изменяет значение любого свойства объекта location, не будет следовать URL-адресу.

EDIT
Интересная статья на тему: http://www.seroundtable.com/archives/019026.html

и ответ Бобинса на этот потенциальный дублирующий вопрос предполагает то же самое: window.location и SEO

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...