Настройка мета-тегов шаблонами 1С-Битрикс
Шаблоны мета-тегов — механизм автоматической генерации <title>, <meta name="description"> и <meta name="keywords"> для элементов и разделов инфоблоков на основе их полей и свойств. Альтернатива ручному заполнению каждого элемента — которое при каталоге в 10 000 товаров физически невозможно.
Где настраивается
Маркетинг → Поисковая оптимизация → Мета-теги → Добавить правило.
Правило привязывается к конкретному инфоблоку и типу объекта (разделы или элементы). На одном инфоблоке можно создать несколько правил с разными условиями (например, разные шаблоны для разных разделов).
Синтаксис шаблонов
В поле шаблона используются подстановки вида #FIELD_CODE# и #PROPERTY_{CODE}#:
| Подстановка | Что возвращает |
|---|---|
#NAME# |
Название элемента или раздела |
#SECTION_NAME# |
Название родительского раздела элемента |
#IBLOCK_NAME# |
Название инфоблока |
#PROPERTY_{CODE}# |
Значение свойства с кодом CODE |
#PROPERTY_{CODE}_VALUE# |
Текстовое значение свойства-списка |
#CODE# |
Символьный код элемента |
#ID# |
Числовой ID элемента |
Пример для раздела каталога:
Купить #NAME# оптом и в розницу | Интернет-магазин
Пример description для товара:
#NAME# в интернет-магазине. #PROPERTY_SHORT_DESCRIPTION# Доставка по всей России.
Приоритет значений
Шаблон — это значение по умолчанию. Если у конкретного элемента вручную заполнены поля SEO_META_TITLE, SEO_META_DESCRIPTION, SEO_META_KEYWORDS (они доступны в форме редактирования элемента во вкладке «SEO»), то они используются вместо шаблона.
Иерархия для элемента:
- Заполненные вручную SEO-поля элемента.
- Шаблон правила для этого инфоблока и раздела.
- Общий шаблон для всех элементов инфоблока (без привязки к разделу).
Подключение в шаблоне сайта
Мета-теги из модуля seo нужно явно вывести в <head>. В шаблоне:
// В header.php перед </head>
$oSeoPage = new \Bitrix\Seo\SitemapPage();
// или через стандартный вызов:
$APPLICATION->ShowHead();
Либо явно через GetPageProperty:
<title><?= $APPLICATION->GetPageProperty('title') ?: $APPLICATION->GetTitle() ?></title>
<meta name="description" content="<?= $APPLICATION->GetPageProperty('description') ?>">
$APPLICATION->ShowHead() автоматически выводит мета-теги, canonical, og-теги, если они были установлены компонентами страницы.
Отладка шаблонов
Если мета-теги не применяются:
- Проверить, включён ли модуль
seo: Настройки → Модули → Список модулей. - Проверить, что у инфоблока в его настройках включена SEO-оптимизация: Контент → Инфоблоки → [инфоблок] → SEO.
- Убедиться, что компонент детальной страницы вызывает
$APPLICATION->SetPageProperty()или используетbitrix:seo.meta. - Сбросить кеш инфоблока.
Сроки выполнения
Настройка шаблонов мета-тегов для каталога (разделы + элементы) с учётом свойств — 2–3 часа.







