Wordpress - Spintax - плагин для генерации динамического контента на основе шаблонов
Что такое Spintax?
Spintax (от spin syntax — «синтаксис вращения») — это язык шаблонной разметки, который позволяет из одного исходного текста генерировать тысячи уникальных вариантов. Он появился в начале 2000-х как инструмент SEO-копирайтинга, а в 2009 году был стандартизирован в десктоп-приложении Generating The Web (GTW) (разработчик — S5 Development LLC).
Базовый синтаксис выглядит так:
{Привет|Здравствуйте|Добрый день}, {дорогой|уважаемый} {пользователь|клиент}!
Из одной строки получается 12 возможных вариантов. В реальных шаблонах с десятками точек вариативности число уникальных текстов достигает миллионов. Spintax-шаблон — это многоразовый контент-актив, который можно создать один раз и генерировать по нему контент бесконечно.
Возможности синтаксиса
Полный синтаксис включает следующие элементы:
| Синтаксис | Описание | Пример |
|---|---|---|
| b|c} | Перечисление — случайный выбор одного варианта | Hi|Hey} |
| b|c] | Перестановка — взять N элементов, перемешать, склеить | y|z] → y z x
|
| b|c] | Перестановка с настройками (min/max, разделители) | b|c] |
%var%
|
Переменная | Hello %name%!
|
#set %var% = val
|
Локальная переменная | blue} |
| else} | Условная конструкция: если переменная задана — then, иначе — else | Hi there} |
| f2|f3} | Склонение по числу (поддержка ru/uk/be трёх форм и en двух форм) | товара|товаров} |
#include "slug"
|
Вложенный шаблон | #include "header"
|
/#...#/
|
Комментарий (исключается из вывода) | /# это комментарий #/
|
- Особенности
- Вложенность любых элементов друг в друга — неограниченная глубина
- Пустые опции в перечислениях допустимы (иногда ничего не выводится)
- Переменные поддерживают ленивое вычисление (раскрываются при подстановке, а не при определении)
- Автоматическая пост-обработка: экранирование URL/email, схлопывание пробелов, расстановка пунктуации, капитализация
Где применяют?
1. SEO-контент на WordPress
Самое массовое применение. С помощью плагина Spintax можно динамически генерировать:
- описания товаров для интернет-магазинов (каждый товар получает уникальный текст)
- посадочные страницы для разных городов (local SEO)
- мета-описания и alt-тексты
- блоки FAQ и «О компании»
- отзывы и кейсы
2. Email-маркетинг и рассылки
Генерация вариаций тем писем и прехедеров для A/B-тестирования, персонализированных тел писем с подстановкой имени, города, тарифа.
3. Рекламные объявления
Создание множества уникальных текстов объявлений из одного шаблона для Яндекс.Директ, Google Ads, VK Реклама.
4. Тестирование и QA
Генерация реалистичного контента для наполнения тестовых стендов и staging-окружений.
5. Агентства и контент-фермы
Многоразовые шаблоны, которые можно переиспользовать на сайтах разных клиентов с подстановкой их данных (название, город, телефон).
Зачем? Преимущества подхода
- Дёшево
- В отличие от AI-генерации на каждый запрос (ChatGPT/Claude API — каждая загрузка страницы стоит денег), Spintax рендерит текст локально, одной строковой операцией. Ноль затрат на генерацию после создания шаблона.
- Предсказуемо
- AI может «галлюцинировать», написать фактологическую ошибку или съехать с тона. Spintax выдаёт ровно то, что заложил автор. Каждый вариант проверен человеком при создании шаблона.
- Контролируемо
- Жёсткая логика вариативности: автор явно указывает, где и какие варианты допустимы. Нет вероятностной генерации.
- Несколько языков
- Встроенная поддержка плюральных форм для русского/украинского/белорусского (три формы: товар, товара, товаров) и английского (две формы: item, items).
- AI-first workflow
- Современный подход — попросить нейросеть написать шаблон со спинтакс-разметкой, проверить и опубликовать. AI используется один раз на этапе создания, а не при каждом показе.
Реализация: WordPress-плагин Spintax
Репозиторий investblog/spintax — это свободный WordPress-плагин (GPL-2.0+, PHP 8.0+, WordPress 6.2+), разработанный студией 301st.
Из чего состоит
Плагин делится на две части:
Движок Spintax — интерпретатор шаблонной разметки с полной поддержкой GTW-синтаксиса:
- Перечисления, перестановки, переменные, условные конструкции, плюрали
- Валидация шаблонов (проверка скобок, циклических ссылок, синтаксиса)
- Live Preview — рендер без сохранения
- Кеширование через WordPress Object Cache API (Redis/Memcached)
- Cron-регенерация с настраиваемым TTL
Слой привязок (Bindings) — соединяет шаблоны с полями записей:
- ACF (Free/Pro): text, textarea, wysiwyg
- post-meta: любые произвольные поля
- Триггеры: при сохранении поста или по cron (hourly/twicedaily/daily)
- Bulk Apply — асинхронный обход через Action Scheduler
- Защита ручных правок: хэширование последнего сгенерированного значения
- Индикатор устаревшего шаблона (stale-source banner)
- Страница логов с фильтрацией по уровню и поиском
WP-CLI
wp spintax bindings list wp spintax bindings apply <id> wp spintax bindings test <id> --post_id=<id> wp spintax bindings export > bindings.json wp spintax bindings import < bindings.json
Быстрый старт
- Создать шаблон: Spintax → Add New
- Вставить шорткод
[spintax slug="my-template"]в пост - Или использовать в PHP:
echo spintax_render( 'my-template' ); - Или настроить привязку к ACF-полю — и контент будет генерироваться автоматически при каждом сохранении
