Налаштування мета-тегів шаблонами для Bitrix CMS
Шаблони мета-тегів — механізм автоматичної генерації <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 години.







