Tarotas від Inithouse: управління 5 мовами на одному домені
Ми створюємо інструменти в Inithouse. Один із наших продуктів — Tarotas. Це додаток для розкладу карт Таро. Ми пропонуємо контент п'ятьма мовами: чеською, англійською, польською, словацькою та німецькою. Усе це розміщено на одному домені.
Нам потрібно було обрати структуру для нашої багатомовної системи. Ми розглянули три варіанти:
- Домени верхнього рівня (TLD) з кодом країни (example.cz)
- Піддомени (cs.example.com)
- Підкаталоги (example.com/cs/)
Ми обрали підкаталоги. Ось чому.
Підкаталоги дозволяють тримати все в одному місці. Ви використовуєте одне розгортання (deployment), один SSL-сертифікат і одну властивість у Search Console. Ви також зберігаєте весь авторитет посилань в одному «кошику». Це життєво важливо для продуктів на ранніх стадіях розвитку.
Інші варіанти мають високу вартість:
- TLD пропонують потужне геотаргування. Але вам доведеться керувати кількома доменами та DNS-записами. Це створює величезні операційні витрати.
- Піддомени діють як напівнезалежні сайти. Це розділяє ваш авторитет посилань. Вам також знадобляться окремі властивості Search Console для кожного з них.
Наш технологічний стек також вплинув на цей вибір. Tarotas використовує React. Підкаталоги — це просто маршрути (routes). Наш роутер легко з ними справляється. Піддомени потребували б складних змін у DNS та розгортанні.
Щоб це працювало, ми використовуємо теги hreflang. Ці теги вказують пошуковим системам, яку мову показувати. Однак реалізація є непростою.
Поширені помилки, які псують багатомовне SEO:
- Відсутність двосторонніх посилань. Якщо сторінка А посилається на сторінку Б, сторінка Б повинна посилатися назад на сторінку А.
- Неправильні канонічні теги (canonical tags). Кожна мовна сторінка повинна вказувати на саму себе як на канонічну URL-адресу. Якщо ви спрямуєте всі мови на одну англійську URL-адресу, Google деіндексує ваші інші мови.
- Ін'єкція на стороні клієнта (Client-side injection). Пошукові системи можуть не побачити теги, якщо ви впроваджуєте їх лише за допомогою JavaScript. Ви повинні переконатися, що метатеги з'являються в початковому HTML.
- Забуття x-default. Вам потрібна мова за замовчуванням (fallback language) для користувачів, чия мова не збігається з наявними.
Наша порада для вашого багатомовного продукту:
- Використовуйте підкаталоги, якщо хочете простоти та спільного авторитету.
- Використовуйте TLD, якщо геотаргування та локальне ціноутворення важливіші за мову.
- Переконайтеся, що ваші канонічні URL-адреси є самопосилальними (self-referencing) для кожної мови.
- Використовуйте теги лише для мови, якщо ваш контент є універсальним для різних країн.
- Стежте за попередженнями про дубльований контент у Google Search Console.
- Чекайте на результати тижнями. Google обробляє ці сигнали повільно.
Якщо ваш міжнародний трафік здається низьким, спочатку перевірте свої канонічні теги. Зазвичай помилка саме там.
