Мультирегиональность против многосайтовости на 1С-Битрикс

Мультирегиональность против многосайтовости на 1С-Битрикс

28 февраля 2018


Автор: Сотбит
Здравствуйте, друзья! Сегодня мы расскажем о том, какие инструменты необходимо использовать, чтобы организовать мультирегиональность любого проекта на 1С-Битрикс.
Фото 1: «5-min (1).jpg»
Итак, если вы уже пытались организовать работу мультирегионального проекта, то должны знать, что по стандартам 1С-Битрикс это можно сделать только за счет многосайтовости. У этого функционала есть как свои плюсы, так и минусы. Среди плюсов стоит выделить:
  • Стандартный функционал 1С-Битрикс. Это одна из базовых возможностей в коробке БУС, за которую компания несет ответственность. Поэтому так важно стремиться следовать стандартам 1С-Битрикс, поскольку лишь это гарантирует стабильность работы проекта.
  • Возможность закрепления самого инфоблока за конкретным сайтом.
  • Информационная поддержка. В сети много материалов о том, как на многосайтовости организовать мультирегиональный проект.
По сути, на этом преимущества заканчиваются. Минусов, на наш взгляд, куда больше. Давайте же рассмотрим их:
  1. Высокая стоимость доп. сайта. В коробке БУС по умолчанию идет два сайта. Каждый последующий сайт необходимо докупать. Так, если у вас мультирегиональный проект состоит из 10 регионов – это значит, что вам необходимо будет докупить еще 8 сайтов дополнительно. А если исходить из того, что стоимость каждого доп. сайта для редакции «Бизнес» 21 870 руб., то вам придется раскошелиться (8 сайтов умножаем на стоимость одного сайта 21 870 руб.) на 174 960 руб. Согласитесь, немаленькая сумма, даже если вы располагаете неплохим бюджетом?
  2. Отсутствие возможности определения и выбора региона пользователя. В стандарте Битрикс нет компонента, который отвечает за определение региона пользователя или за выбор региона пользователем самостоятельно.
  3. Тип цен не связан с сайтом (регионом). В коробке нет возможности сделать соответствие типов цен и регионов. Это значит, что придется мудрить и использовать «костыли», чтобы вывести свою цену на товар для каждого региона.
  4. Нельзя реализовать мультирегиональность на одном домене. Иногда достаточно реализовать мультирегиональность на одном домене. Но стандарт 1С-Битрикс не позволяет это сделать, даже при покупке дополнительных сайтов.
  5. Сложность поддержки проекта. Не получится сделать так, чтобы один инфоблок принадлежал всем регионам. Это значит, что придется дублировать инфоблок для каждого региона. Как результат - усложняется процесс наполнения проекта контентом, а также увеличивается стоимость технической поддержки подобного проекта.
  6. Сложность реализации. Несмотря на то, что в сети есть большое количество информации на эту тему, реализовать многосайтовость на поддоменах будет не просто обычному пользователю 1С-Битрикс. Придется погрузиться глубже в серверные особенности проекта, а также узнать, что такое «символьная ссылка».
Список недостатков можно продолжать, но, как мы видим, и этого достаточно, чтобы понять, что разработка мультирегионального проекта будет делом не только не простым, но и недешевым. Именно поэтому разработчики стараются выйти из этой ситуации за счет использования каких-то своих собственных разработок, которые состоят из хардкорного кода и «костылей». Поддерживать такой проект будет сложно не только последующим разработчикам, но даже его создателям.

Благо, сейчас есть Маркетплейс, который поможет в разработке функционала мультирегиональности. Так, в Маркете уже есть несколько решений, которые закрывают недостатки стандартной многосайтовости, описанной выше. Но существенным минусом этих решений является то, что они основаны на инфоблоках. То есть каждый регион – по сути, элемент инфоблока. Это значит, что выборка регионов идет из общей таблицы данных, что отрицательно сказывается на скорости загрузки контента.

Мы же, как разработчики-перфекционисты (не знаем, хорошо это или плохо), решили создать свой собственный модуль мультирегиональности, который поможет устранить и решить все проблемы и недостатки как стандартного функционала 1С--Битрикс, так и недостатки решений сторонних разработчиков.

Итак, мы презентуем наш новый модуль «Мультирегиональность». Давайте же рассмотрим его более подробно.

1. Функциональность модуля
Решение любой задачи, так или иначе, основано на реализации ряда технических функциональных особенностей. В нашем модуле это:
  1. Поддержка неограниченного числа поддоменов на одном сайте 1С-Битрикс.
  2. Организация мультирегиональности на одном домене.
  3. Определение города пользователя c помощью стандартного модуля 1С-Битрикс "Веб-аналитика" (только для редакции "Бизнес";) либо с помощью стороннего сервиса.
  4. Отображение определенного контента (товары, новости, статьи и прочее) в зависимости от выбранного пользователем региона.
  5. Вывод контактных данных актуальных для каждого региона.
  6. Позволяет задавать соответствие между типом цены и регионом, в котором эта цена будет отображаться.
  7. Возможность прикрепления каждого склада к определенному региону.
  8. SEO оптимизация каждого поддомена за счет использования уникальных метаданных (метатеги, описание).
  9. Генерация карты сайта и robots.txt для каждого поддомена.
  10. Подстановка региона в местоположение при оформлении заказа.
  11. Корректная работа модуля при кешировании и при использовании технологии "Композитный сайт".
Неограниченное число поддоменов
Платформа 1С-Битрикс бесплатно позволяет сделать только 1 дополнительный поддомен. Это значит, что для реализации мультирегионального проекта даже на десятке поддоменов, вам придется платить за каждый. Наш модуль избавит вас от этого, и вы сможете без особых усилий создать столько поддоменов, сколько захотите.
Фото 2: «неограниченое число поддоменов.jpg»
Может возникнуть резонный вопрос – а зачем вообще нужны поддомены и можно ли обойтись без них при создании мультирегиональных сайтов? Давайте разбираться.
Для создания полноценного проекта, ориентированного на несколько регионов вы можете пойти двумя путями:
  • Выделить для каждого города отдельный домен;
  • Определить домен для основного города и поддомены для остальных.
Использование отдельных доменов для каждого города – это трудоемкий и долгий путь. Дело в том, что каждый сайт будет рассматриваться поисковыми роботами как отдельный и независимый и продвигать их нужно будет независимо друг от друга. Иными словами, репутация у каждого сайта будет своя и не будет никак связана с вашим основным сайтом.

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

Таким образом, наибольшая выгода при минимальных затратах в создании мультирегионального проекта может быть достигнута только при использовании поддоменов.

Работа с поддоменами происходит в панели администратора на вкладке «Регионы». Для добавления поддомена нужно просто нажать на соответствующую кнопку и ввести все данные поддомена: название, регион, типы цен, склады, контактные данные.

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

Для реализации режима мультирегиональности на одном поддомене необходимо просто поставить галочку в специальном поле в панели администратора. Никаких сложных действий и технических навыков вам не потребуется. В результате в адресной строке браузера ссылка не будет менять свой вид, но информация на сайте будет отображаться для выбранного региона.
Фото 3: «Мультирегиональность на одном поддомене.jpg»

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

Определение города пользователя
Определение города пользователя – это одна из первостепенных функций мультирегионального проекта. Поскольку именно от нее зависит, какой именно контент будет показан пользователю. Поэтому так важно максимально точно определять местоположение клиента, чтобы не запутать его. Наш новый модуль имеет два варианта определения города:
  • При помощи стандартного модуля БУС «Веб-аналитика».
  • С использованием стороннего сервиса GeoIP.
Первый вариант возможен, если у вас редакция «Бизнес» 1С-Битрикс, не ниже. Второй же вариант доступен для всех редакций, даже «Стандарт». Особенность сервиса GeoIP в том, что он не только пользуется большой популярностью среди разработчиков, но и является одним из самых надежных. К тому же для его использования не нужна регистрация.
Фото 4: «Определение города 2.jpg»
Но это еще не все. Если же пользователь по каким-либо причинам не будет согласен со своим регионом, то он может самостоятельно указать тот регион, который считает правильным.
Фото 5: «Определение города.jpg»

Отображение определенного контента
Отображение правильной информации для каждого региона – это основное назначение модуля мультирегиональности. С его помощью вы можете настроить отображение конкретного контента под определенный регион. Новости, товары, категории товаров и т.п. будут выводится на страницу в соответствии с выбранным городом.

Для каждого контентного элемента в панели администратора вы можете настроить отображение в том или ином регионе, либо же в ряде регионов. Для этого мы создали пользовательское свойство «Регионы», благодаря которому привязывать к регионам можно товары, акции, статьи и новости, категории товаров и разделы сайта.
Фото 6: «Отображение контента по регионам.jpg»
Контактные данные по регионам
После определения города пользователя, на странице «Контакты» и в специализированных полях (шапка сайта, футер) будут выводиться контактные данные вашей организации, актуальные для выбранного региона.
Фото 7: «Контактные данные по регионам.jpg»
Для этого в настройках региона существует несколько специализированных полей «Телефоны» и «Адрес», куда вы можете внести всю необходимую информацию, количество телефонов не ограничено и при необходимости их можно добавить любое количество (для этого есть специальная кнопка «Добавить»).

Соответствие цен регионам
Чаще всего в мультирегиональных проектах цена на один и тот же товар в разных регионах отличается. Разрабатывая собственный модуль, мы не могли не предусмотреть подобный функционал.
Фото 8: «Отображение контента по регионам на сайте.jpg»
Для его реализации мы использовали типы цен – за каждым регионом закрепляется определенный тип цены. Настройка осуществляется из административного интерфейса модуля при создании или редактировании региона.

Остатки на складах
Мультирегиональный проект – это не только разные цены для каждого региона, но и остатки на складах. Поэтому наш модуль позволяет закрепить за каждым регионом определенный склад, или даже несколько складов. В итоге в карточке товара будет отображаться остаток с того склада, который закреплен за регионом пользователя.
Фото 9: «Склады по регионам.jpg»

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

Поэтому мы доработали SEO-вкладки в стандартных интерфейсах редактирования элемента и раздела каталога. Теперь стало просто добавлять в мета-данные шаблоны-макросы, которые отвечают за регионы. Для этого был введен дополнительный пункт в контекстное меню настроек разделов.
Фото 10: «SEO для поддоменов.jpg»
Кроме того, мы запустили процесс интеграции модуля «Мультирегиональность» с другим нашим модулем «SEO умного фильтра: мета-теги, заголовки, карта-сайта». Поэтому в ближайшее время можно будет задавать любые шаблоны мета-данных посадочных страниц умного фильтра, учитывая при этом регион пользователя.

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

Генерация карты сайта и robots.txt
Карта сайта и текстовый файл robots.txt являются важными составляющими интернет-проекта для его SEO продвижения. Именно благодаря им поисковые роботы ищут и индексируют страницы интернет-магазина. Так карта сайта предоставляет поисковикам быстрый доступ ко всем страницам сайта. А файл robots.txt закрывает от индексации те данные, которые не являются публичными.
Фото 11: «карта сайта.jpg»

Для каждого поддомена генерируется своя карта сайта и файл robots.txt, что позволяет не только облегчить процесс индексации, но и поможет повысить посещаемость вашего сайта. В нашем модуле эта функция доступна в 1 клик! Вам не нужно разбираться в коде, переносить какие-либо данные, производить сложные операции – просто выбираете специальную вкладку в администраторской панели и нажимаете на кнопку.

Подстановка региона в местоположение при оформлении заказа
Платформа 1С-Битрикс позволяет выбрать заранее установленный город, который будет отображаться при оформлении заказа по умолчанию. Иными словами, вне зависимости от региона пользователя местоположение не будет меняться, что крайне негативно сказывается на мультирегиональном проекте. Наш модуль эту проблему решает в два счета. Теперь при оформлении заказа отображается именно тот регион, который закреплен за пользователем.
Фото 12: «подстановка региона в заказ.jpg»

Кеширование и "Композитный сайт"
Кеширование и композитный сайт – технологии, которые позволяют значительно увеличить скорость загрузки сайта. Но в случае мультирегионального проекта использование этих технологий может быть затруднено.

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

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

2. Преимущества модуля перед аналогами
  • Высокая скорость работы. Аналогичные модули в качестве регионов используют элементы инфоблока. Мы же решили создать свою таблицу и собственный интерфейс. Это значительно увеличивает скорость работы модуля, что важно для большого мультирегионального проекта.
  • Демо-режим. Модуль имеет 14-дневный демо-режим. Это значит, что в течение этого времени вы можете протестировать работу модуля в полнофункциональном режиме совершенно бесплатно.
  • Личный менеджер. За вами будет закреплен личный менеджер, который будет вести вас и помогать взаимодействовать с техническими специалистами. Избавьте себя от удовольствия общаться с вечно недовольными программистами напрямую.
  • Собственный отдел техподдержки. В отличие от большинства разработчиков поддержкой наших решений занимается собственный отдел технической поддержки, а не разработчики в свободное от основной работы время. Это позволяет нам держать самые строгие регламенты в Маркетплес и обеспечивать скорость ответа от 1 минуты до 4 часов.
  • Мы в ТОП-5 разработчиков Маркетплейс. Войти в 5-ку лучших можно только при 100% концентрации на разработке собственных решений. Это наша основная сфера деятельности, которая приносит нам 60% всего дохода. Это значит, что мы не бросим вдруг Маркетплейс завтра и не оставим вас с нашими модулями наедине. Для большинства же разработчиков разработка решений Маркетплейс — хобби в свободное от проектов время, от которой они завтра могут отказаться, и тогда вы останетесь без помощи и техподдержки.
  • Открытые линии. У нас внедрены открытые линии. Зачем создавать обращение? Пишите прямо через соц сети, мессенджеры, скайп или напрямую в онлайн-чате на нашем сайте.
  • Мы умеем разговаривать. Лень писать? Звоните! В отличие от других разработчиков мы ответим на все ваши технические вопросы и по телефону.
3.   Интеграция модуля в другие решения
На данный момент модуль «Мультирегиональность» уже интегрирован в некоторые наши решения:
Как мы уже говорили выше, сейчас мы занимаемся интеграцией данного модуля с решением «SEO умного фильтра: мета-теги, заголовки, карта сайта». Это позволит более гибко производить SEO оптимизацию страниц умного фильтра для каждого региона, что позволит привлечь дополнительный трафик на мультирегиональный проект.

4.   Резюме
Итак, как мы выяснили, мультирегиональность можно реализовать с помощью штатных средств 1С-Битрикс за счет использования многосайтовости. Но в этом случае сложность внедрения и стоимость реализации проекта значительно возрастет.

Можно пойти иным путем: использовать решения из каталога Маркетплейс. Для этого можно воспользоваться как разработками сторонних разработчиков, так и нашим собственным модулем «Мультирегиональность». Это позволит сократить и время разработки мультирегионального проекта, и его стоимость.

Мы же, совсем недавно опубликовав модуль «Мультирегиональность» в Маркетплейс, уже приготовили список обновлений, который увеличит функциональность модуля и сделает его еще лучше. Так что следите за нашими новостями.

Оригинальную статью вы можете найти на сайте компании Сотбит.