Налаштування масової генерації SEO-тегів 1С-Бітрікс

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

Налаштування масової генерації SEO-тегів 1С-Бітрікс

Новий розділ каталогу — 3 000 товарів, у кожного потрібен унікальний <title>, <meta name="description"> та OG-теги. Писати вручну недоцільно. Бітрікс підтримує шаблонну генерацію SEO-полів через вбудований механізм SEO-фільтрів, і його можливостей достатньо для більшості завдань.

Де зберігаються SEO-поля

SEO-дані елементів інфоблоку зберігаються в таблиці b_iblock_element_iprop (iprop — iblock property). Зв'язок через b_iblock_iprop_template — шаблонні правила для розділів і елементів.

Для окремих елементів: Картка товару → вкладка SEO — поля ELEMENT_META_TITLE, ELEMENT_META_KEYWORDS, ELEMENT_META_DESCRIPTION, ELEMENT_PAGE_TITLE.

Шаблонні правила задаються на рівні інфоблоку або розділу: Інфоблоки → [інфоблок] → вкладка SEO. У шаблоні використовуються змінні виду {=this.Name}, {=this.DetailText}, {=this.Property.BRAND.Value}.

Налаштування шаблонів через інтерфейс

Для більшості каталогів достатньо шаблонних правил без скриптів:

Шаблон title: {=this.Name} купити в Україні — {=this.Property.BRAND.Value}

Шаблон description: {=this.Name} за ціною від {=catalog.MinPrice} грн. Швидка доставка. {=this.PreviewText}

У розділі Інфоблоки → [інфоблок] → Правила для SEO можна задати різні шаблони для різних розділів каталогу — це дозволяє врахувати специфіку категорій без коду.

Змінні, доступні в шаблоні:

Змінна Що повертає
{=this.Name} Назва елемента
{=this.PreviewText} Анонсовий текст
{=this.Property.CODE.Value} Значення властивості
{=catalog.MinPrice} Мінімальна ціна
{=section.Name} Назва розділу

Програмна генерація через iPropertyValues

Якщо шаблонного механізму недостатньо — генеруємо SEO-теги скриптом і зберігаємо через \Bitrix\Iblock\InheritedProperty\ElementValues:

use Bitrix\Iblock\InheritedProperty\ElementValues;

$iblockId = 10;

$elementsRes = \CIBlockElement::GetList(
    [],
    ['IBLOCK_ID' => $iblockId, 'ACTIVE' => 'Y'],
    false,
    false,
    ['ID', 'NAME', 'PREVIEW_TEXT', 'XML_ID']
);

while ($element = $elementsRes->Fetch()) {
    // Отримуємо потрібні властивості
    $props = \CIBlockElement::GetProperty($iblockId, $element['ID'], [], ['CODE' => ['BRAND', 'COLOR', 'MATERIAL']])->Fetch();

    $brand = $props['BRAND_VALUE'] ?? '';

    $title       = "{$element['NAME']} {$brand} купити з доставкою";
    $description = "Купіть {$element['NAME']} від {$brand}. " . strip_tags($element['PREVIEW_TEXT']);
    $description = mb_substr($description, 0, 155);

    $ipropValues = new ElementValues($iblockId, $element['ID']);
    $ipropValues->setValues([
        'ELEMENT_META_TITLE'       => $title,
        'ELEMENT_META_DESCRIPTION' => $description,
        'ELEMENT_PAGE_TITLE'       => $element['NAME'] . ($brand ? " ({$brand})" : ''),
    ]);
}

ElementValues::setValues() зберігає дані в b_iblock_element_iprop та автоматично інвалідує кеш.

Генерація через AI/шаблонізатор

Для складніших описів можна передавати дані товару в GPT-сумісний API та записувати результат назад. Це виправдано, якщо в каталозі є технічні товари з описами з 1С, що нечитабельні для пошукових систем.

Принцип той самий: отримуємо дані елемента → формуємо опис → зберігаємо через ElementValues::setValues(). Важливо: обмежуйте частоту запитів до API та кешуйте вже оброблені елементи, щоб повторний запуск не витрачав API-квоту.

Перевірка унікальності

Після генерації корисно перевірити, чи немає повних дублів title:

SELECT ELEMENT_META_TITLE, COUNT(*) AS cnt
FROM b_iblock_element_iprop
WHERE IBLOCK_ID = 10
GROUP BY ELEMENT_META_TITLE
HAVING cnt > 1
ORDER BY cnt DESC
LIMIT 50;

Дублі title — це сигнал, що шаблон недостатньо специфічний. Додайте в шаблон унікалізуючу властивість: артикул, колір, розмір.

Терміни виконання

Завдання Час
Налаштування шаблонних правил (без коду) 2–4 години
Скрипт генерації для каталогу до 5 000 товарів 1 день
Генерація з AI-описами, 1 000–5 000 товарів 2–4 дні