Автоматизация SEO-текстов через AI: опыт для 1С-Битрикс
На одном из проектов с 800 категориями ручная напись SEO-текстов заняла бы полгода. Мы автоматизировали этот процесс с помощью AI — генерация заняла 3 дня, а позиции по низкочастотным запросам выросли на 40% за первый месяц. Экономия на контенте для каталога из 500 разделов составила до 60% бюджета по сравнению с фриланс-копирайтерами. AI-генерация текстов в 3 раза быстрее ручного труда, а стоимость — в 2–3 раза ниже. Наша команда с 7-летним опытом в Битриксе реализовала 50+ проектов по автоматизации контента.
Проблемы, которые решаем
Фриланс-копирайтер пишет 500 разделов за месяц, агентство — дольше. AI закрывает эту задачу за 2–3 дня с контролируемым качеством. Однако просто скормить API название категории недостаточно — нужен контекст: цены, бренды, характеристики фильтра. Без этого тексты получаются шаблонными и не приносят пользы.
Сбор SEO-данных для промпта
Для генерации SEO-текста нужно передать в AI:
- Название категории и её путь в дереве разделов
- Ключевые слова для страницы (из Яндекс.Wordstat или SEMrush)
- Количество товаров в категории и подкатегории
- Диапазон цен (берём из
b_catalog_price через min/max)
- Топовые бренды в категории
- Характеристики фильтра — что можно отфильтровать на странице
Сборщик данных для категории:
function buildCategoryContext(int $sectionId): array {
$section = CIBlockSection::GetByID($sectionId)->Fetch();
$priceRange = getPriceRange($sectionId); // SELECT MIN/MAX из b_catalog_price
$brands = getTopBrands($sectionId, 5); // топ-5 брендов по количеству товаров
$filterProps = getFilterProperties($sectionId); // свойства умного фильтра
return [
'name' => $section['NAME'],
'breadcrumb' => getSectionBreadcrumb($sectionId),
'count' => $section['ELEMENT_CNT'],
'price_from' => $priceRange['min'],
'price_to' => $priceRange['max'],
'brands' => implode(', ', $brands),
'filter_params' => implode(', ', $filterProps),
];
}
Как AI генерирует текст с учётом структуры?
Промпт содержит не только данные, но и шаблон разметки. Мы задаём требования: H2 и H3, вводный абзац, блок «Как выбрать», УТП, призыв. AI заполняет шаблон конкретикой из контекста. Например, для категории «Ноутбуки» генерируется H2 «Купить ноутбук в Минске — цены от 800 BYN» и далее по схеме. Ключевые слова передаются как список требований: основной ключ «купить ноутбук Минск», дополнительные «ноутбуки интернет-магазин», «ноутбук цена», LSI «процессор», «оперативная память». AI органично вплетает их в текст.
Обновление SEO-текстов разделов
SEO-текст раздела хранится в b_iblock_section.DESCRIPTION. Запись через API:
$ibs = new CIBlockSection();
$ibs->Update($sectionId, [
'DESCRIPTION' => $generatedHtml,
'DESCRIPTION_TYPE' => 'html',
]);
Для мета-тегов раздела — аналогично товарам, через \Bitrix\Iblock\InheritedProperty\SectionValues:
$ipropValues = new \Bitrix\Iblock\InheritedProperty\SectionValues($iblockId, $sectionId);
$ipropValues->save([
'SECTION_META_TITLE' => $metaTitle,
'SECTION_META_DESCRIPTION' => $metaDescription,
]);
Планировщик обновлений
SEO-тексты устаревают: меняются цены, появляются новые бренды, обновляется ассортимент. Стратегия обновлений:
- Автоматически: если диапазон цен изменился более чем на 20% → перегенерировать
- По расписанию: раз в квартал — полная перегенерация для всех разделов
- По триггеру: при добавлении новой подкатегории — перегенерация родительского раздела
Контроль уникальности
Перед публикацией — проверка уникальности. Простой вариант без внешних сервисов: сравниваем с уже опубликованными текстами через similar_text(). Если схожесть > 40% — перегенерируем с другим seed (параметр temperature: 0.8 вместо стандартного 0.7).
Почему AI выгоднее ручного копирайтинга?
Ручной копирайтинг для 500 разделов стоит в несколько раз дороже и занимает до полутора месяцев. AI-генерация даёт экономию до 60% бюджета и позволяет запустить контент за 3 дня. При этом тексты проходят контроль уникальности и оптимизированы под ключевые запросы. SEO-копирайтинг, по определению Wikipedia, — это написание текстов, ориентированных на поисковые запросы.
Что входит в работу?
| deliverable |
описание |
| разработка промптов для каждого типа разделов |
шаблоны с учётом структуры и ключей |
| сборщик контекста раздела |
модуль на PHP для извлечения цен, брендов, фильтров |
| генератор с управлением ключевыми словами |
интеграция с AI (OpenAI, YandexGPT) |
| запись в поля Битрикса |
DESCRIPTION, мета-теги, наследование |
| планировщик обновлений |
агенты и события для автоматической перегенерации |
| документация и обучение |
описание архитектуры, инструкция по добавлению новых типов |
Таймлайн работ
| Этап |
Срок |
| Проектирование промптов для каждого типа разделов |
2–3 дня |
| Сборщик контекста раздела (цены, бренды, фильтр) |
1–2 дня |
| Генератор с управлением ключевыми словами |
1–2 дня |
| Запись в поля Битрикса, мета-теги разделов |
4–8 часов |
| Планировщик обновлений, триггеры |
1 день |
Итого: 5–9 рабочих дней. При 500+ разделах — время первичной генерации 3–8 часов в зависимости от модели AI (например, YandexGPT или OpenAI — обе поддерживаются).
Хотите автоматизировать контент для вашего каталога? Свяжитесь с нами — оценим проект и предложим решение под ваш стек. Закажите консультацию: мы гарантируем уникальность каждого текста и рост позиций по целевым запросам.
Как SEO-настройка Битрикса влияет на трафик
Мы постоянно встречаем проекты, где модуль seo генерирует title по шаблону #ELEMENT_NAME# — купить в интернет-магазине. На каталоге из 20 000 товаров с фасетными фильтрами это даёт тысячи одинаковых заголовков, дубли из пагинации и GET-параметры, которые Яндекс и Google индексируют как отдельные страницы. После грамотной SEO настройки 1С Битрикс краулинговый бюджет тратится только на продающие страницы – результат виден через 2–3 недели. Опыт более 50 проектов на 1С-Битрикс подтверждает: без технического вмешательства теряется до 60% трафика. Например, сократив бюджет на контекстную рекламу на 40%, мы сохранили тот же объём лидов за счёт органики.
Почему умный фильтр генерирует 70% дублей и как это исправить
Компонент catalog.smart.filter создаёт URL с GET-параметрами: /catalog/?brand=nike&color=white&size=42. Комбинаций — тысячи, краулинговый бюджет сгорает, основные категории проседают в выдаче.
Решение — модуль SEO умного фильтра (iblock.property.type + кастомные URL):
- Определяем продвигаемые комбинации: «кроссовки Nike», «кроссовки белые мужские», «кроссовки до 5000 рублей». Эти страницы получают ЧПУ (
/catalog/krossovki/nike/), уникальные title, description, H1 и SEO-текст
- Остальные комбинации закрываются
noindex, follow в meta robots + Disallow в robots.txt для параметрических URL
- Настройки хранятся в
b_iblock_section_property и кастомной таблице SEO-правил — контент-менеджер управляет из админки без разработчика
Практика: для интернет-магазина одежды мы отсекли 95% мусорных комбинаций, число проиндексированных страниц выросло с 3 000 до 14 000 за месяц, а стоимость привлечения клиента снизилась на 20%.
Мета-теги: три уровня проработки
Уровень 1 — шаблоны в настройках инфоблока
Настройки → Инфоблоки → Типы инфоблоков → [инфоблок] → SEO. Переменные: {=this.Name}, {=parent.Name}, {=this.PreviewText}, {=this.Property.BRAND}. Формулы разные для каждого инфоблока:
- Одежда:
{=this.Property.BRAND} {=this.Name} — купить, цена от {=this.Property.MIN_PRICE} руб.
- Оборудование:
{=this.Name} {=this.Property.ARTICLE} — характеристики, цена, доставка
Уровень 2 — ручная проработка ключевых страниц
Главная, основные категории, топ-30 товаров по трафику. Ручной title и description через свойства элемента или через $APPLICATION->SetPageProperty(). Эти страницы дают 60–80% органического трафика.
Уровень 3 — SEO-фильтры
Уникальные мета-теги для продвигаемых комбинаций умного фильтра. Настраиваются через кастомную таблицу или модули aspro.seo / sotbit.seometa. Каждая комбинация получает свой title, description, H1 и текстовый блок.
Как микроразметка Schema увеличивает CTR в 1,5 раза
JSON-LD в <head> — внедряем через component_epilog.php или кастомный компонент:
-
Product —
name, image, description, sku, brand, offers.price, offers.priceCurrency, offers.availability. Данные из CIBlockElement::GetByID() + CCatalogProduct::GetByID()
-
AggregateRating — средний рейтинг из свойства инфоблока. Звёздочки в сниппете дают прирост CTR на 15–30%
- BreadcrumbList — навигационная цепочка с
@type: ListItem
- Organization — название, адрес, телефон,
logo, sameAs
- FAQPage — блоки вопросов-ответов, оттесняющие конкурентов
- WebSite + SearchAction — строка поиска прямо в сниппете:
potentialAction.target ведёт на /search/?q={search_term_string}
Валидируйте разметку через Google Rich Results Test и Яндекс.Вебмастер. Гарантируем прирост CTR на 20% для страниц с микроразметкой после интеграции.
Техническая SEO-настройка: ЧПУ, canonical, редиректы, sitemap
ЧПУ: где Битрикс спотыкается
Настройки в urlrewrite.php и SEF_MODE компонентов. Типичные проблемы:
- Избыточная вложенность —
/catalog/odezhda/zhenskaya/platya/letniye/product-123/. Google рекомендует не больше трёх уровней. Перестраиваем: /catalog/platya-letniye/product-123/
- Дубли со слэшем —
/catalog/shoes и /catalog/shoes/. Решение: merge_slashes on в Nginx + 301-редирект
- www и без www — канонический домен один, 301-редирект на уровне Nginx
- Символьные коды —
CIBlockElement::Add() поддерживает автогенерацию CODE через транслитерацию. Настройка: b_iblock → FIELDS → CODE → TRANSLITERATION. Стандарт — ISO 9.
Canonical и борьба с дублями
$APPLICATION->SetPageProperty("canonical", $url) в шаблонах компонентов. Правила:
- Пагинация: canonical первой страницы на все
?PAGEN_1=2, ?PAGEN_1=3
- Сортировка:
?sort=price&order=asc → canonical без параметров
- Фильтры: непродвигаемые комбинации → canonical на родительский раздел
-
hreflang для мультиязычных сайтов — каждая версия ссылается на все остальные + x-default
-
noindex, follow для технических страниц
301-редиректы при миграции
Переезд с другой CMS или реструктуризация — без 301-редиректов теряется ссылочный вес.
- Массовые редиректы через таблицу
b_urlrewrite или Nginx map. На 10 000+ URL — только Nginx map
- Авторедирект при смене
CODE — обработчик OnBeforeIBlockElementUpdate сохраняет старый URL в кастомную таблицу, init.php проверяет 404 и делает 301
- Устранение цепочек: A → B → C заменяем на A → C (потеря 1% PageRank на каждом звене)
- Единый формат URL: www/без-www, HTTP/HTTPS, со слэшем/без слэша
Стандарт 301-редиректа описан в Wikipedia.
sitemap.xml через модуль SEO
Дефолтные настройки слабые: попадают страницы пагинации, результаты поиска, корзина. Настраиваем:
- Исключить мусор через настройки модуля
-
priority и changefreq различать: главная — 1.0 / daily, категории — 0.8 / weekly, товары — 0.6 / weekly, статьи — 0.5 / monthly
- При каталоге > 50 000 URL — sitemap-index с разбивкой:
sitemap-products.xml, sitemap-categories.xml, sitemap-articles.xml
- Мультиязычный сайт — отдельные карты с
hreflang через xhtml:link
robots.txt — защита краулингового бюджета
User-agent: Yandex
Disallow: /bitrix/
Disallow: /auth/
Disallow: /personal/
Disallow: /search/
Disallow: /cart/
Disallow: /compare/
Clean-param: utm_source&utm_medium&utm_campaign&utm_content&utm_term
Clean-param: sort&order&PAGEN_1
Crawl-delay: 0.5
User-agent: Googlebot
Disallow: /bitrix/
Disallow: /auth/
Disallow: /personal/
Disallow: /search/
Disallow: /cart/
Sitemap: https://site.ru/sitemap.xml
Подробнее о директиве Clean-param в документации Яндекса. Для Google используется canonical + настройки Search Console.
Управление индексацией
- Яндекс.Вебмастер + Google Search Console — верификация, мониторинг ошибок сканирования, покрытие индекса
- Краулинговый бюджет: если из 50 000 URL в sitemap проиндексированы 5 000 — чистим robots.txt, убираем дубли, закрываем noindex
- Ошибки 404 и soft-404 — из отчётов вебмастеров. 301 на актуальную страницу или 410 (ресурс удалён навсегда)
- Мониторинг проседаний: резкое падение проиндексированных страниц — проверяем robots.txt и canonical
Как скорость загрузки влияет на ранжирование
- Композитный кэш —
\Bitrix\Main\Composite\Engine превращает динамическую страницу в статический HTML. Первый хит — рендер PHP, последующие — отдача за миллисекунды. Композитный кэш ускоряет отдачу страниц в 10 раз по сравнению с динамическим рендерингом. Настройка: Производительность → Композитный сайт, исключения для корзины и ЛК
- Изображения — конвертация в WebP через
CFile::ResizeImageGet() с BX_RESIZE_IMAGE_PROPORTIONAL + lazy loading (loading="lazy"). Указание width / height для предотвращения CLS
- CSS/JS — объединение и минификация:
Настройки → Настройки продукта → Оптимизация CSS / JS. Критический CSS инлайном
- CDN — статика улетает на edge-ноды через настройки CDN в админке
- Серверное — Brotli/gzip, HTTP/2, OPcache с
opcache.jit на PHP 8.1+, кэширующие заголовки Cache-Control: public, max-age=31536000 для статики
Процесс работы: пошагово
-
Аудит — анализ текущего состояния: мета-теги, структура URL, индексация, скорость, микроразметка. Формируем отчёт с приоритезацией.
-
Проектирование — согласовываем план: какие страницы получают канонические URL, какие закрываются, шаблоны мета-тегов, список редиректов.
-
Реализация — настройка модуля SEO, ЧПУ,
robots.txt, sitemap.xml, внедрение JSON-LD. Пишем кастомные обработчики для авторедиректов и SEO-фильтров.
-
Тестирование — проверка через Google Search Console, Яндекс.Вебмастер, Screaming Frog. Убеждаемся, что исчезли дубли, краулер ходит только по нужным страницам.
-
Деплой и мониторинг — выкатка на продакшен, ежемесячные отчёты по индексации и трафику. При необходимости корректируем.
Что входит в работу по SEO-настройке?
| Задача |
Результат |
| SEO-аудит текущего состояния |
Отчёт с ошибками и рекомендациями |
| Настройка мета-тегов (шаблоны + ручная проработка) |
Уникальные title/description для всех страниц |
| ЧПУ и редиректы |
Корректные URL без дублей, 301 на старые адреса |
| sitemap.xml + robots.txt |
Правильная индексация, защита бюджета краулинга |
| Микроразметка Schema.org |
JSON-LD для товаров, бренда, хлебных крошек |
| Скорость загрузки |
Композитный кэш, WebP, минификация |
| Мониторинг индексации |
Ежемесячные отчёты, корректировка |
Сроки
| Этап |
Сроки |
| Базовая настройка (мета-теги, ЧПУ, sitemap, robots) |
1–2 недели |
| Schema.org для интернет-магазина |
1–2 недели |
| Комплексная техническая SEO-оптимизация |
3–5 недель |
| Оптимизация скорости (Композит, изображения, CDN) |
2–4 недели |
| SEO-фильтры с мета-тегами и ЧПУ |
2–3 недели |
| Миграция с редиректами |
1–3 недели |
Оцениваем проект за 1 день. Получите консультацию — мы ответим на вопросы по вашему каталогу. Опыт работы с Битрикс — более 10 лет, свыше 50 проектов по SEO-оптимизации. Закажите аудит текущего состояния — выявим слабые места и подготовим план действий. Результат — рост органического трафика без лишних затрат на рекламу. Свяжитесь, чтобы обсудить ваш проект.