
Слаги
Слаги — SEO-дружественные алиасы для значений фильтров.
Назначение
Слаги преобразуют значения фильтров в URL-friendly формат:
| Оригинал | Слаг |
|---|---|
| Apple Inc. | apple-inc |
| Красный | krasnyj |
| 16 ГБ | 16-gb |
Автоматическая генерация
При первом появлении значения фильтра система автоматически создаёт слаг:
- Транслитерация (кириллица → латиница)
- Приведение к нижнему регистру
- Замена пробелов и спецсимволов на дефисы
- Удаление повторяющихся дефисов
Таблица слагов
| Столбец | Описание |
|---|---|
| Ключ | Ключ фильтра (vendor, color, size) |
| Значение | Оригинальное значение |
| Слаг | SEO-алиас |
| Дата создания | Когда был создан |
Редактирование
Изменение слага
- Найдите нужную запись
- Дважды кликните по полю Слаг
- Введите новое значение
- Нажмите Enter или кликните вне поля
Правила для слагов
- Только латинские буквы, цифры и дефисы
- Без пробелов и спецсимволов
- Уникальность в пределах ключа фильтра
- Не начинается и не заканчивается дефисом
Поиск и фильтрация
Поиск
Введите текст в поле поиска для фильтрации по:
- Ключу
- Значению
- Слагу
Фильтр по ключу
Выберите ключ фильтра в выпадающем списке для отображения только его значений.
Массовые операции
Регенерация слагов
Пересоздаёт слаги для выбранных записей по правилам транслитерации:
- Выделите записи
- Нажмите Регенерировать
Удаление
- Выделите записи
- Нажмите Удалить
При удалении слага:
- Значение остаётся в системе
- При следующем запросе слаг будет создан заново
Импорт/Экспорт
Экспорт
Действия → Экспорт в CSVФормат CSV:
csv
key,value,slug
vendor,"Apple Inc.",apple-inc
color,"Красный",krasnyjИмпорт
Действия → Импорт из CSVЗагрузите файл с колонками key, value, slug.
Использование в URL
Формат URL по умолчанию
/catalog/vendor_apple/color_krasnyj/Кастомный формат через паттерны
/catalog/apple/krasnyj/Программный доступ
php
$mfilter = $modx->services->get('mfilter');
$slugManager = $mfilter->getSlugManager();
// Получить слаг
$slug = $slugManager->getOrCreate('vendor', 'Apple Inc.');
// 'apple-inc'
// Получить значение по слагу
$value = $slugManager->getValue('vendor', 'apple-inc');
// 'Apple Inc.'
// Проверить существование
$exists = $slugManager->hasSlug('vendor', 'apple-inc');Советы
- Редактируйте осторожно — изменение слага меняет URL, что влияет на SEO
- Используйте редиректы — при изменении слага настройте 301-редирект
- Проверяйте уникальность — одинаковые слаги для разных значений вызовут конфликты
