Налаштування мультирегіональності сайту 1С-Бітрікс

Наша компанія займається розробкою, підтримкою та обслуговуванням рішень на Бітрікс та Бітрікс24 будь-якої складності. Від простих односторінкових сайтів до складних інтернет-магазинів, CRM систем з інтеграцією 1С та телефонії. Досвід розробників підтверджено сертифікатами від вендора.
Пропоновані послуги
Показано 1 з 1 послугУсі 1626 послуг
Налаштування мультирегіональності сайту 1С-Бітрікс
Проста
~1 робочий день
Часті питання

Наші компетенції:

Етапи розробки

Останні роботи

  • image_website-b2b-advance_0.png
    Розробка сайту компанії B2B ADVANCE
    1262
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Розробка веб-сайту для компанії ФІКСПЕР
    851
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Розробка на базі Бітрікс, Бітрікс24, 1С для компанії Development of an Online
    585
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    751
  • image_crm_dolbimby_434_0.webp
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    657
  • image_crm_technotorgcomplex_453_0.webp
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    989

Налаштування мультирегіональності сайту 1С-Бітрікс

Мультирегіональність — це коли Москва видить одні ціни та контент, Єкатеринбург — інші, а пошуковик індексує обидва варіанти окремо. У Бітриксі це досягається кількома підходами з різними компромісами за складністю реалізації та SEO-результатом.

Три архітектурних підходи

Поддомени: msk.example.com, ekb.example.com. Кожен поддомен — окремий сайт у мультисайтовій інсталяції (b_lang). Чисте рішення з SEO-точки зору — різні URL для різних регіонів. Складніше в підтримці: контент потрібно синхронізувати між сайтами або використовувати спільні інфоблоки з фільтрацією за прив'язкою до сайту.

Директорії: example.com/msk/, example.com/ekb/. Технічно простіше: один сайт, різні розділи інфоблока. SEO гірше, ніж поддомени, але прийнятно при правильній налаштуванні geotargeting в Яндекс.Вебмастері.

GET-параметр або cookie: example.com/?region=msk. Поганий вибір для SEO — один URL, різний контент, пошуковик не може розрізнити.

Для серйозних проектів — поддомени. Для дрібних — директорії.

Реалізація через поддомени в мультисайтовості

Створіть кілька сайтів у Бітриксі (b_lang): msk з SERVER_NAME = msk.example.com, ekb з SERVER_NAME = ekb.example.com. У кожного сайту свій мовний код та свої налаштування.

Інфоблоки у Бітриксі прив'язуються до сайтів через таблицю b_iblock_site. Інфоблок може бути спільним для всіх сайтів або окремим для кожного. Для каталогу товарів зазвичай один спільний інфоблок, а регіональні ціни управляються через прайс-листи (b_catalog_price з прив'язкою до груп користувачів).

Регіональні ціни: створюєте типи цін у каталозі (/bitrix/admin/cat_price_type.php) — «Москва», «Регіони». Користувач при переході на регіональний сайт автоматично потрапляє в групу з потрібним типом ціни. Логіка присвоєння групи — в OnAfterUserAuthorize та при кожній зміні регіону.

Визначення регіону користувача

Автоматичне визначення через IP + вручну через «попап вибору міста». Модуль sale містить клас \Bitrix\Sale\Location\LocationTable та таблицю b_sale_location з ієрархією міст/регіонів. Але для геопозиціювання за IP Бітрікс не надає вбудованого рішення — використовуйте сторонні сервіси (MaxMind GeoIP, Sypex Geo, DaData).

Типова схема: при першому візиті визначаєте регіон за IP через зовнішній API або локальну базу GeoIP, показуєте попап «Ваше місто — Єкатеринбург? Так / Вибрати інше», зберігаєте вибір в сесію та cookie з тривалим TTL.

$regionId = $_COOKIE['user_region'] ?? detectRegionByIp($_SERVER['REMOTE_ADDR']);
$_SESSION['REGION_ID'] = $regionId;
// Перенаправляємо на потрібний поддомен якщо не збігається

SEO-налаштування для мультирегіонального сайту

У Яндекс.Вебмастері для кожного поддомену налаштуйте геопривязку: Москва → msk.example.com, Єкатеринбург → ekb.example.com. Це дозволяє пошуковику ранжувати регіональні версії за відповідними регіонами.

Тег hreflang для регіональних варіантів на російській мові не потрібен (він для мов, не регіонів). Але canonical — потрібен: якщо один URL доступний з обох поддоменів, вкажіть canonical на основний.

У Бітриксі canonical встановлюється в шаблоні через $APPLICATION->SetPageProperty('canonical', 'https://msk.example.com' . $APPLICATION->GetCurPage()).

Регіональні телефони та адреси

Контент, специфічний для регіону — телефони, адреси офісів, умови доставки. Це або параметри сайту в b_option з суфіксом регіону, або окремий інфоблок «Офіси» з прив'язкою до регіону через властивість. Компонент на сторінці контактів фільтрує офіси за поточним сайтом/регіоном.