WordPress с несколькими доменами, несколькими сайтами и несколькими языками.

Вопрос или проблема

Я хочу опубликовать сайт с несколькими доменами/языками на основе WordPress.

Я настраиваю несколько доменов для публикации контента, ориентированного на посетителей, чтобы предложить сайты на французском, английском, немецком, испанском и японском языках. Каждый основной язык связан с основным доменом (.fr, .com, .de, .es, .jp), и пока WP Multisite работает хорошо.

Моя проблема:

У меня есть второстепенные домены: Бельгия, Швейцария, Соединенное Королевство (.be, .ch, .co.uk). Эти три второстепенных домена привязаны к основным доменам: .be и .ch связаны с .fr, а .co.uk связан с .com.

Я хочу найти способ использовать тот же контент, что и на основных доменах, для второстепенных доменов (если это возможно, без дублирования контента) и корректно настроить hreflang для каждого домена (fr_FR, fr_BE, fr_CH, en_US, en_GB, es_ES, de_DE, ja_JP)

  • Является ли лучшей практикой использовать мультисайт для этого?
  • Есть ли рекомендации относительно выбора плагина для дублирования контента между основными и второстепенными доменами?
  • Как я могу управлять hreflang?

Спасибо за предложения, Антуан.

Долго пытался решить аналогичную проблему. Пробовал Polylang, WPML, различные пользовательские коды. Проводил исследования в области доменных имен и языков.

Я начал с поддоменов: myfancysite.com, затем добавил de.myfancysite.com, it.myfancysite.com и т.д. Потом я осознал, что теряю потенциал.

Пришел к следующим выводам:

Распространение мультиязычного проекта на ccTLDs дороже, но ГОРАЗДО лучше, чем работа с поддоменами/папками, потому что я могу размещать каждый сайт в соответствующей стране, и мне не нужно привязывать себя к провайдерам CDN, таким как Cloudflare. Однако это не только дорого, но и сложно. Большинство плагинов, доступных для мультиязычных проектов (бесплатных ИЛИ платных), ориентированы на настройку поддоменов, с ограниченной информацией о различных доменах на разных TLDs. Пытался использовать некоторые индивидуальные плагины, платил за них. Всегда чего-то не хватало.

Поэтому я сделал следующее.

Создал тему с пользовательским именем с использованием Underscores.me. Бывшая тема _s от WordPress поддерживается Automattic, коммерческой компанией, стоящей за WordPress. Надежно. Мне не нужно платить за пользовательскую разработку, я буду использовать то, что хорошо известно. Я также не буду использовать платные темы. Они (снова) ненадежны с разных точек зрения. Underscores не должна быть ненадежной. Мне не нужно работать с дочерними темами, я также буду брендовым.

Установил первый проект локально. Начал настраивать его. Использовал некоторые плагины, не так много, и самые установленные (хорошо поддерживаемые) – SEO плагин, удаление категорий из URL, Really Simple SSL, Contact Form 7 вместе с Really Simple CAPTCHA, Easy Updates Manager и ACF.

Последний был важен для моего SEO. Он отображает поля. Такие, как мои поля hreflang.

Добавил группу в ACF и назвал ее “Языки”. Группа доступна для публикаций и страниц. Добавил поле для каждого из моих соответствующих языков. Назвал поля german_language, spanish_language, italian_language и т.д.

Вывел поля в header.php, где-то в <head> секции.

<link rel="alternate" hreflang="de" href="https://wordpress.stackexchange.com/questions/295337/<?php echo the_field("german_language'); ?>">

ACF создает переменную для меня и сохраняет её в базе данных.

Я использовал ту же переменную для создания виджета с флагами.

Если есть страница или пост, которых нет на других доменах, я просто добавлю условие к моему коду hreflang (isset может сработать, это не должно быть сложно).

Затем установил получившийся сайт везде. Сделал резервную копию и экспортировал с помощью WPRESS (платный плагин для импорта, но он у меня есть на других проектах). Вы можете использовать что-то другое для экспорта/импорта того же проекта. Изменил язык, обновил переводы.

Промыл, ополоснул, повторил.

Google не увидит дублирующийся контент, если вы правильно используете hreflang. Это ключ – hreflang.

Будущее светло.

Ответ или решение

Теория

WordPress — это одна из самых популярных платформ для создания веб-сайтов, позволяющая пользователям управлять множеством доменов и языковых вариаций. Управление множественными доменами и языковыми версиями может быть сложным, особенно когда необходимо избегать дублирования контента и правильно управлять hreflang-тегами для поисковых систем. Hreflang-теги особенно важны, так как они помогают поисковым системам определить, какой контент предназначен для конкретного региона или языка, что позволяет избежать проблем с дублированным контентом и улучшить SEO.

Пример

В вашем случае, основная задача — создать систему управления несколькими основными и второстепенными доменами, обеспечивая при этом корректное функционирование hreflang-тегов. Вы планируете управлять следующими доменами: например, французским (.fr), английским (.com), немецким (.de), испанским (.es), японским (.jp) с дополнительными второстепенными доменами для Бельгии (.be), Швейцарии (.ch) и Великобритании (.co.uk). Основные домены связаны с второстепенными (например, .be и .ch с .fr, а .co.uk с .com).

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

Применение

  1. Настройка WordPress Multisite:
    Multisite может быть хорошим решением для вашего сценария. Он позволяет управлять несколькими сайтами из одной установки WordPress и может поддерживать разные домены для каждого сайта. Для этого вам:

    • Настройте WordPress Multisite для работы с доменами верхнего уровня (ccTLDs).
    • Используйте плагин Domain Mapping для соответствия второстепенных доменов с их основными доменами.
  2. Плагины для управления контентом:
    Чтобы избежать дублирования контента между основными и второстепенными доменами, используйте такие плагины, как WPML или Polylang, которые поддерживают мультиязычность, а также ACF (Advanced Custom Fields) для управления специфическими полями, такими как hreflang.

    • Настройте ACF для создания полей для каждой языковой версии вашего сайта и используйте эти поля для генерации корректных hreflang-тегов.
    • Дублирование контента через автоматизированные решения следует избегать, вместо этого используйте подход «один сайт – несколько языков», обеспечивая актуальность и релевантность контента.
  3. Управление hreflang-тегами:
    Hreflang-теги требуют особого внимания, поскольку они указывают на региональные версии вашей страницы.

    • Разработайте структуру тегов hreflang для каждого из ваших доменов, включая основной язык и регион (например, fr_FR для Франции, fr_BE для Бельгии, en_US для США, en_GB для Великобритании).
    • Обновите ваш файл header.php или используйте плагин для автоматизации добавления hreflang-тегов.
  4. Регулярная проверка и обновления:
    Тестируйте и следите за правильностью группы доменов и языковых версий через Google Search Console или аналогичные инструменты, чтобы быть уверенным, что hreflang-теги правильно работают и нет проблем с дублированием контента.

  5. SEO-оптимизация и хостинг:
    Хостинг каждого сайта в его целевой стране может помочь улучшить локальный SEO. Использование местных IP-адресов и SSL-сертификатов для каждого из доменов важно для завоевания доверия местной аудитории и улучшения ранжирования в поисковых системах.

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

Оцените материал
Добавить комментарий

Капча загружается...