Файл Sitemap и несколько языков

Правила раздела: faq.php?mode=okay
Модератор: Модераторы

dabustard
dabustard
Репутация: 4
Сообщения: 62
Зарегистрирован: 26.01.2018
С нами: 6 лет 2 месяца

Сообщение #1 dabustard » 20.02.2018, 14:50

В текущей версии 2.1.4 для каждого языка свой sitemap.xml.
Согласно рекомендаций Google файл Sitemap должен быть один c перечислением ссылок на все языковые версии страниц.

По сути в имеющемся файле нужно изменить строку:

Код: Выделить всё

<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

на

Код: Выделить всё

<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml">

В каждый <url></url> добавить строки с альтернативными url для каждого языка (в примере демосайт):

Код: Выделить всё

<xhtml:link rel="alternate" hreflang="ru" href="http://www.demookay.com"/>
<xhtml:link rel="alternate" hreflang="en" href="http://www.demookay.com/en"/>

И отдавать 404 по http://www.demookay.com/en/sitemap.xml

Ну и в robots.txt добавить ссылку на sitemap не мешало бы.

OkayCMS M
Администратор
Аватара
OkayCMS M
Администратор
Репутация: 216
Сообщения: 1627
Зарегистрирован: 12.11.2015
С нами: 8 лет 4 месяца
Сайт Skype

Сообщение #2 OkayCMS » 20.02.2018, 21:51

В документации не сказано что стоит объединять эти файлы в один. А вот объединение их в нашем случает было бы довольно критичным потому что:
а) Намного раньше файл бы превышал количество ссылок в 50 000 и нужно было бы делать пагинацию сайтмапов
б) При ошибочном включении языка ненужные страницы залетали бы в индекс намного быстрее.

При этом в гугл серч консоль можно добавить нормально несколько сайтмапов и они корректно обрабатываются.

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

dabustard
dabustard
Репутация: 4
Сообщения: 62
Зарегистрирован: 26.01.2018
С нами: 6 лет 2 месяца

Сообщение #3 dabustard » 21.02.2018, 14:23

OkayCMS писал(а):В документации не сказано что стоит объединять эти файлы в один.
полагаю, что там не сказано про объединение, так как о нескольких файлах там говорится только в том случае, когда на сайте более 50000 url.

makki M
makki M
Репутация: 199
Сообщения: 697
Зарегистрирован: 12.08.2016
С нами: 7 лет 7 месяцев
Откуда: Киев
Сайт

Сообщение #4 makki » 22.02.2018, 09:09

В Search Console недавно появились такие сообщения об ошибках:
Геотаргетинг | Язык > На странице с кодом языка ru нет обратных ссылок.
Укажите в HTML-коде страницы с кодом языка ru обратные ссылки: URL сайта и альтернативные URL.

На некоторых страницах Вашего сайта неправильно реализованы атрибуты rel и hreflang. Скорее всего, неверно указаны языковые коды или регионы либо отсутствуют обратные ссылки (если страница А ссылается на страницу Б, то вторая страница должна содержать обратную ссылку на первую). Атрибут hreflang используется для показа результатов Google Поиска на подходящем языке и с правильным региональным URL.
Возможно эта ошибка связана с этой темой. Может у кого-то были подобные ошибки в Search Console? Как их убрать?
Cоздание и расширение функционала интернет-магазина на платформе OkayCMS 2 (с 3-й и 4-й версией не работаю)

pikasso M
pikasso M
Возраст: 45
Репутация: 10
Сообщения: 128
Зарегистрирован: 31.01.2016
С нами: 8 лет 1 месяц

Сообщение #5 pikasso » 22.02.2018, 15:31

makki писал(а):В Search Console недавно появились такие сообщения об ошибках:
Геотаргетинг | Язык > На странице с кодом языка ru нет обратных ссылок.
Укажите в HTML-коде страницы с кодом языка ru обратные ссылки: URL сайта и альтернативные URL.

На некоторых страницах Вашего сайта неправильно реализованы атрибуты rel и hreflang. Скорее всего, неверно указаны языковые коды или регионы либо отсутствуют обратные ссылки (если страница А ссылается на страницу Б, то вторая страница должна содержать обратную ссылку на первую). Атрибут hreflang используется для показа результатов Google Поиска на подходящем языке и с правильным региональным URL.
Возможно эта ошибка связана с этой темой. Может у кого-то были подобные ошибки в Search Console? Как их убрать?
Точно такой же вопрос. Недавно увидел аналогичные сообщения в Search Console...

OkayCMS M
Администратор
Аватара
OkayCMS M
Администратор
Репутация: 216
Сообщения: 1627
Зарегистрирован: 12.11.2015
С нами: 8 лет 4 месяца
Сайт Skype

Сообщение #6 OkayCMS » 23.02.2018, 08:09

Можете прислать ссылку на такие сайты в личку?

dabustard
dabustard
Репутация: 4
Сообщения: 62
Зарегистрирован: 26.01.2018
С нами: 6 лет 2 месяца

Сообщение #7 dabustard » 26.02.2018, 09:00

makki писал(а):Возможно эта ошибка связана с этой темой. Может у кого-то были подобные ошибки в Search Console? Как их убрать?
OkayCMS писал(а):Точно такой же вопрос. Недавно увидел аналогичные сообщения в Search Console...
OkayCMS писал(а):Можете прислать ссылку на такие сайты в личку?
вот тут валидатор - https://technicalseo.com/seo-tools/hreflang/ который выдаст ту же ошибку на демо-сайте в том числе. Проблема там в несоответствии фактических url и url в тегах canonical и alternate. Я как раз писал об этом в этой теме
У нас получается, что:
URL главной:
для основного языка: http://www.demookay.com/ и дубль http://www.demookay.com
для второго языка: http://www.demookay.com/en/ и дубль http://www.demookay.com/en/
Канонический url:
для основного языка: http://www.demookay.com
для второго языка: http://www.demookay.com/en
Альтернативный url:
для основного языка: http://www.demookay.com/
для второго языка: http://www.demookay.com/en/

К тому же ссылка на главную второго языка идет http://www.demookay.com/en/, вместо http://www.demookay.com/en. Получается, что на страницу с альтернативным языком, которая ялвляется канонической - http://www.demookay.com/en - ссылки нет, потому в search console и ошибка.

Нужно навести порядок со всеми этими url:
1) определится использовать слеш на конце или нет;
2) настроить серверный редирект на нужную версию;
3) проверить/исправить ссылку в переключателе языка;
4) проверить/исправить url в тегах canonical, alternate и файле sitemap.


Название раздела: Баг-репорт OkayCMS (Сообщения об ошибках)
Правила раздела: faq.php?mode=okay

Быстрый ответ


Введите код в точности так, как вы его видите. Регистр символов не имеет значения.
Код подтверждения

   

Вернуться в «Баг-репорт OkayCMS (Сообщения об ошибках)»

Кто сейчас на форуме (по активности за 5 минут)

Сейчас этот раздел просматривают: 20 гостей