Как в CyrtoLat отключить автоподмену в отдельных разделах сайта

На практике чаще всего нужен не полный отказ от CyrtoLat, а точечное исключение. Например, на сайте уже есть рабочие латинские URL, а автоподмена нужна только для новых материалов. Или наоборот: часть разделов должна оставаться в исходной форме, потому что на них завязаны внешние ссылки, рекламные кампании или ручная структура навигации.

Если пытаться решить это через массовое отключение плагина, обычно ломается больше, чем нужно. Правильнее сначала понять, что именно делает автоподмена в вашем случае: меняет slug при сохранении, переписывает отдельные слова, влияет на редиректы или затрагивает уже опубликованные записи. От этого зависит способ настройки.

Когда проблема действительно в автоподмене CyrtoLat

Симптомы обычно похожи, но причины разные. Один и тот же URL может вести себя по-разному в зависимости от того, как именно он был создан и когда редактировался.

  • После сохранения записи slug меняется, хотя вы его не трогали.
  • В одном разделе кириллица преобразуется, а в другом — нет.
  • Старые URL перестают совпадать с внутренними ссылками после массового редактирования.
  • В админке slug выглядит нормально, но на фронтенде открывается уже другая версия адреса.

Если вы видите только одну из этих проблем, не спешите отключать весь механизм. В большинстве случаев достаточно исключить конкретные типы записей, рубрики или отдельные шаблоны работы с URL.

Что проверить до изменений

  • Тип записи: запись, страница, произвольный тип.
  • Где именно меняется адрес: при первом сохранении, при обновлении, при импорте.
  • Есть ли уже индексированные поиском URL.
  • Используются ли эти адреса в меню, хлебных крошках, внешних ссылках, письмах.

Как отключить автоподмену только там, где это нужно

Если в CyrtoLat предусмотрены настройки исключений, начинайте с них. Это безопаснее, чем править данные вручную. Логика простая: сначала ограничиваем область действия, потом проверяем результат на одном тестовом объекте, и только после этого переносим правило на весь сайт.

В типичном сценарии удобно разделить сайт на три зоны:

ЗонаЧто делатьРиск
Новые материалыОставить автоподмену включеннойМинимальный
Старые URLИсключить из автоподменыСредний, если уже есть индексация
Служебные страницыОтключить автоподмену полностьюНизкий, если страницы не участвуют в SEO

Если в интерфейсе плагина есть список исключений по типам записей или шаблонам, используйте его первым. Если такой настройки нет или ее недостаточно, тогда имеет смысл подключать фильтр или небольшой код в functions.php дочерней темы.

Пример точечного исключения через код

Ниже пример подхода, когда вы хотите отключить автоподмену для конкретного типа записей. Название фильтра зависит от того, что именно предусмотрено в CyrtoLat, поэтому перед внедрением проверьте документацию плагина или его исходники. Сам принцип остается тем же: вернуть false для нужного контекста.

add_filter('cyrtolat_enable_transliteration', function ($enabled, $post_id) {
    if (!$post_id) {
        return $enabled;
    }

    $post_type = get_post_type($post_id);

    if ($post_type === 'page') {
        return false;
    }

    return $enabled;
}, 10, 2);

Если у вас в CyrtoLat используется другой фильтр или параметр, не подставляйте этот код вслепую. Сначала найдите реальный хук в документации или в коде плагина. Но сама схема проверки остается рабочей: определяете контекст, сравниваете тип записи, отключаете преобразование только там, где оно мешает.

Если нужно исключить конкретные разделы

Для рубрик, таксономий или отдельных страниц удобнее опираться на ID, slug или список исключений. Это особенно полезно, когда нужно сохранить кириллицу в служебных разделах вроде политики конфиденциальности, контактов или внутренних страниц для редакторов.

add_filter('cyrtolat_enable_transliteration', function ($enabled, $post_id) {
    $excluded_ids = array(12, 34, 56);

    if (in_array((int) $post_id, $excluded_ids, true)) {
        return false;
    }

    return $enabled;
}, 10, 2);

Такой вариант проще сопровождать, чем пытаться строить сложные правила по заголовкам. Но если страниц много, лучше вынести список исключений в отдельную опцию или хотя бы в комментарий к коду, чтобы не потерять логику через пару месяцев.

Пошаговая схема внедрения без поломки URL

Не меняйте настройки на боевом сайте сразу для всех разделов. Сначала проверьте один объект, затем один тип записи, и только потом расширяйте правило.

  1. Сделайте резервную копию базы данных.
  2. Выберите один тестовый пост или страницу.
  3. Отключите автоподмену только для него.
  4. Сохраните запись и проверьте итоговый slug.
  5. Откройте URL в браузере и убедитесь, что нет лишнего редиректа.
  6. Проверьте внутренние ссылки на эту страницу из меню и из связанных материалов.

Если после сохранения slug остался прежним, но на фронтенде открывается другой адрес, проблема может быть не в автоподмене, а в редиректах, кэше или конфликте с другим SEO-плагином. Тогда нужно смотреть цепочку перенаправлений и очищать кэш на уровне сайта и CDN.

Как проверить, что решение сработало

Проверка должна быть не визуальной, а технической. Откройте запись в админке, сохраните ее без изменений и сравните slug до и после. Затем проверьте ответ сервера для этого URL.

Минимальный набор проверок:

  • slug не меняется после повторного сохранения;
  • страница открывается по нужному адресу без лишнего редиректа;
  • внутренние ссылки ведут на тот же URL;
  • в sitemap попадает именно нужная версия адреса;
  • в поиске и в кэше нет старой копии страницы.

Для быстрой проверки редиректа удобно использовать curl:

curl -I https://example.com/primer-stranicy

Если в ответе видите цепочку 301 или 302, значит, URL где-то переписывается. Тогда нужно проверить не только CyrtoLat, но и правила в .htaccess, Nginx-конфиг, плагины редиректов и SEO-модули.

Частые ошибки и как их исправить

Отключили плагин целиком вместо точечного исключения

Это самая дорогая ошибка. После деактивации могут измениться новые slug, а старые ссылки начнут конфликтовать с уже проиндексированными адресами. Если задача локальная, не выключайте весь плагин, а ограничьте его действие по типу записи или ID.

Проверили только в админке

В админке slug может выглядеть корректно, но фронтенд будет отдавать другой адрес из-за кэша или редиректа. Всегда проверяйте реальный HTTP-ответ и открытие страницы в режиме инкогнито.

Не учли старые ссылки

Если страница уже была в индексе или на нее ведут внешние ссылки, любое изменение slug нужно сопровождать редиректом и обновлением внутренних ссылок. Иначе получите 404 или размножение дублей.

Смешали несколько механизмов преобразования

Когда одновременно работают CyrtoLat, SEO-плагин и ручные правила редиректов, сложно понять, кто именно меняет адрес. На время диагностики лучше отключать лишние преобразования по одному и фиксировать результат.

Безопасность и производительность: что важно не упустить

Любая логика, завязанная на фильтры и хуки, должна быть предсказуемой. Не тяните тяжелые запросы к базе на каждом сохранении записи, если можно обойтись проверкой типа записи или списка ID. Чем проще условие, тем меньше шанс получить неожиданный эффект при массовом редактировании.

Если вы вносите код вручную, используйте дочернюю тему или mu-plugin, а не правки в основной теме. Так вы не потеряете настройку после обновления. И обязательно храните список исключений в одном месте, а не в нескольких разрозненных сниппетах.

Для сайтов, где важна чистка дублей и контроль технической SEO-части, иногда удобнее держать часть задач в одном инструменте. Если вам нужен набор функций для удаления дублей, чистки и SEO-оптимизации, можно посмотреть Clearfy Pro, но только если он реально закрывает вашу задачу и не дублирует уже настроенную логику CyrtoLat.

Практический чек-лист перед публикацией

  • Проверен один тестовый URL.
  • Сохранение записи не меняет slug там, где это запрещено.
  • Нет лишних редиректов в ответе сервера.
  • Внутренние ссылки обновлены или сохранены как есть.
  • Кэш очищен на сайте, в плагине и на CDN.
  • Список исключений задокументирован для редакторов и разработчиков.

Если после этого поведение все еще нестабильное, ищите конфликт не в самой идее автоподмены, а в том, кто еще переписывает URL на сайте. В таких случаях быстрее всего помогает последовательное отключение сторонних правил и повторная проверка одного и того же адреса на чистом кэше.

Добавь в закладки и поделись с друзьями:

⭐⭐⭐⭐⭐
Как в CyrtoLat отключить редиректы и автоподмену кириллицы в латиницу для отдельных URL
26.08.2026
Как в CyrtoLat проверить и убрать дубли slug после миграции с кириллицы на латиницу
26.08.2026
Как в CyrtoLat отключить автоподмену в отдельных разделах сайта
29.08.2026
Как в CyrtoLat отключить автоподмену слов внутри slug и не ломать уже работающие URL
26.08.2026
Как в CyrtoLat проверить и отладить автоподмену слов в slug после массового импорта
26.08.2026
×

AI-плагин от WPShop.ru

анализирует конкурентов

пишет статьи

готовит SEO

генерирует изображения

и еще кое-что...
WPGPT
Плагин, который наполняет ваш сайт WordPress
Узнать больше