Автогенерация SEO-тегов в 1С-Битрикс: настройка и кастомная логика

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

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

Этапы разработки

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1321
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Разработка веб-сайта для компании ФИКСПЕР
    914
  • 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 Appointment Booking Widget for a Medical Center
    663
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    810
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    709
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    1043

Допустим, в вашем интернет-магазине 10 000 товаров. Ручное заполнение title и description для каждого — недели работы, а пустые мета-теги убивают индексацию. Мы решаем эту задачу настройкой автогенерации SEO-тегов в 1С-Битрикс. Результат — уникальные заголовки и описания для каждой страницы без участия контент-менеджера. Более того, правильные мета-теги увеличивают CTR на 20–30% в выдаче, что напрямую влияет на трафик. Наш опыт показывает: автоматизация окупается за две недели при каталоге от 5 000 позиций.

Какие проблемы решает автогенерация SEO-тегов?

Дублирование title и h1 — частая ошибка: <title> и <h1> совпадают, что ухудшает кликабельность. Правильная практика — они должны различаться, и мы это реализуем.

Отсутствие динамики — стандартные шаблоны не подставляют цену, артикул или остаток. В результате title всех товаров вида "Купить #NAME#" без уникальности.

Сложная логика — для товаров из разных категорий нужны разные шаблоны: например, для одежды — размер, для электроники — мощность. Штатный модуль это не умеет.

Как настроить автогенерацию SEO-тегов?

Базовый инструмент — правила мета-тегов в разделе Маркетинг → Поисковая оптимизация → Мета-теги. Для инфоблока задаётся шаблон с подстановками #NAME#, #SECTION_NAME#, #PROPERTY_{CODE}#. Это покрывает большинство случаев без программирования. Вот типовые шаблоны для интернет-магазина:

Объект Title Description
Элемент каталога #NAME# — цена, характеристики Купите #NAME#. #PROPERTY_SHORT_DESC# Доставка от 1 дня.
Раздел каталога #NAME# — каталог товаров Широкий выбор в разделе #NAME#. #PROPERTY_SECTION_DESC#
Детальная страница статьи `#NAME# Блог`

Подробнее о модуле поисковой оптимизации читайте в официальной документации. Но если нужно подставить бренд из связанного HL-блока или сформировать title от наличия скидки — штатных макросов не хватит. Тут вступает кастомная генерация, которая даёт до 50% больше уникальных title по сравнению со штатными шаблонами.

Когда стандартных шаблонов недостаточно?

Кастомная генерация в 3 раза гибче штатных шаблонов: она позволяет использовать любые данные, включая цены со скидками, остатки, бренды из внешних источников. Например, для электроники можно вывести мощность в title, а для одежды — размерную сетку. Это особенно актуально для каталогов от 20 000 товаров, где каждый процент CTR даёт ощутимый прирост продаж.

Как настроить кастомную генерацию через события?

Мы используем обработчик OnBeforeProlog в init.php. Это событие выполняется до вывода компонентов, поэтому все изменения успевают попасть в <head>. Пример кода:

AddEventHandler('main', 'OnBeforeProlog', function() {
    global $APPLICATION;

    if (!preg_match('#^/catalog/([^/]+)/([^/]+)/#', $_SERVER['REQUEST_URI'])) {
        return;
    }

    $elementId = (int)$_REQUEST['ELEMENT_ID'];
    if (!$elementId) return;

    $el = \CIBlockElement::GetByID($elementId)->GetNext();
    if (!$el) return;

    $brand  = $el['PROPERTIES']['BRAND']['VALUE'] ?? '';
    $model  = $el['NAME'];
    $price  = \CCatalogProduct::GetByID($elementId)['PRICE'] ?? '';

    $APPLICATION->SetPageProperty('title',
        "{$brand} {$model} — купить за {$price} ₽ | Интернет-магазин"
    );
    $APPLICATION->SetPageProperty('description',
        "Купить {$brand} {$model} за {$price} ₽ с доставкой по всей России. " .
        ($el['PROPERTIES']['SHORT_DESC']['VALUE'] ?? '')
    );
});

Вызов SetPageProperty в OnBeforeProlog выполняется раньше, чем компоненты на странице, поэтому значение успевает попасть в <head>. Генерация H1 независимо от title — хорошая практика: <title> и <h1> должны отличаться. H1 задаётся через свойство страницы h1:

$APPLICATION->SetPageProperty('h1', $el['NAME']);

В шаблоне страницы:

<h1><?= $APPLICATION->GetPageProperty('h1') ?: $APPLICATION->GetTitle() ?></h1>

Массовое обновление SEO-полей существующих элементов

Если нужно заполнить SEO-поля для тысяч существующих товаров по шаблону — делается через скрипт:

$res = \CIBlockElement::GetList(
    [],
    ['IBLOCK_ID' => CATALOG_IBLOCK_ID, 'ACTIVE' => 'Y'],
    false,
    false,
    ['ID', 'NAME', 'IBLOCK_ID']
);

while ($el = $res->GetNextElement()) {
    $fields = $el->GetFields();
    $props  = $el->GetProperties();

    $seoTitle = $fields['NAME'] . ' — купить в интернет-магазине';
    $seoDesc  = 'Купите ' . $fields['NAME'] . ' с доставкой. ' .
                ($props['SHORT_DESC']['VALUE'] ?? '');

    \CIBlockElement::SetPropertyValuesEx($fields['ID'], $fields['IBLOCK_ID'], [
        'SEO_TITLE'       => $seoTitle,
        'SEO_DESCRIPTION' => $seoDesc,
    ]);
}

Скрипт запускается разово. После выполнения элементы получат заполненные SEO-поля, которые перекрывают шаблон из модуля.

Шаблоны vs кастом: что выбрать?

Критерий Штатные шаблоны Кастомная генерация
Сложность настройки 1–2 часа, без кода 4–8 часов, требуется PHP
Гибкость Только макросы #NAME#, #SECTION# Любая логика: условия, API, внешние данные
Обновление существующих Только через массовый скрипт Можно сразу совместить с событием
Зависимость от модулей Только SEO-модуль Любые модули и сторонние сервисы

Для 90% проектов достаточно штатных шаблонов. Но если вы работаете с большим каталогом (от 20 000 товаров) или сложной структурой свойств — кастомная генерация окупается ростом CTR до 20% и сокращением ручного труда на 100%.

Наш процесс работы

  1. Анализ — изучаем текущую структуру инфоблоков, свойств и URL. Выявляем страницы с пустыми мета-тегами.
  2. Проектирование — разрабатываем шаблоны title, description, h1 для каждого типа страниц (элемент, раздел, бренд).
  3. Реализация — настраиваем правила SEO-модуля или пишем кастомные обработчики событий.
  4. Тестирование — проверяем на выборке из 50–100 страниц: уникальность, длина, отсутствие дублей.
  5. Деплой — заливаем код на боевой сервер, запускаем массовое обновление (если нужно).
  6. Мониторинг — через 2 недели оцениваем динамику индексации и CTR.

Сроки и стоимость

  • Только шаблоны SEO-модуля — от 2 часов. Стоимость рассчитывается индивидуально.
  • Кастомная генерация + массовое обновление — от 4 до 16 часов. Стоимость зависит от сложности и объёма.

Каждый проект уникален — свяжитесь с нами для точной оценки. Закажите консультацию — получите предварительную оценку вашего проекта.

Что входит в работу

  • Документация по правилам генерации для каждого типа страниц.
  • Исходный код обработчиков событий с комментариями.
  • Инструкция для контент-менеджеров: как добавить новый шаблон или изменить существующий.
  • Гарантия на код — 3 месяца бесплатной поддержки.
  • Консультация по дальнейшей SEO-оптимизации.

Почему выбирают нас?

Официальный партнёр 1С-Битрикс с 10+ летним опытом разработки. Более 200 реализованных проектов, в том числе крупные каталоги (до 500 000 товаров). Сертифицированные специалисты. Индивидуальный подход: мы не копируем решения, а проектируем под вашу структуру.

Получите консультацию — обращайтесь, и мы подготовим оптимальное решение.