Андрей заливает портфолио с телефона: «Кухня_Иваново_01.jpg» в медиатеке даёт длинную ссылку с процентами — клиенту неудобно копировать. Страх понятен: кириллица в имени файла якобы сломает сайт после переноса хостинга. На деле хватает одной настройки при загрузке: плагин транслитерации переведёт буквы в латиницу, и новые фото откроются по адресу вроде foto-kuhnya.jpg.
WordPress сам не переводит кириллицу в латиницу при загрузке: встроенная очистка имени файла убирает опасные символы и пробелы, но русское имя часто остаётся как есть. Для автоматической транслитерации вложений при upload ставят Cyrlitera или Cyr-To-Lat, включают опцию имён файлов и lowercase, отключают второй такой же плагин. Старые файлы с кириллицей сами не переименуются — откат в настройках восстанавливает адреса записей, а не имена в медиатеке.
Транслитерация адреса записи и имени файла в медиатеке — разные задачи. Ниже: что делает ядро WordPress, какой плагин поставить без кода и как проверить upload за пару минут. Про порядок в библиотеке — в материале медиабиблиотека WordPress.
- Разберите, зачем латиница в адресе картинки, а не только в заголовке статьи
- Поймите, что WordPress делает с именем файла «из коробки»
- Выберите плагин транслитерации вместо кода в functions.php
- Установите Cyrlitera и включите транслитерацию вложений
- Проверьте тестовым фото, что настройка сработала
- Спланируйте судьбу старых файлов с кириллицей в медиатеке
- Избегите типичных ошибок: два плагина, FTP и импорт товаров
- Дополните транслит alt-текстом и подписью для людей
- Частые вопросы
- Ломается ли кириллица в имени файла на всех хостингах одинаково?
- Нужен ли именно Cyr-To-Lat, если уже стоит Cyrlitera?
- Переименуются ли старые файлы в медиатеке после включения плагина?
- Что будет с уже опубликованными статьями, где стоят старые картинки?
- Влияет ли транслит имени файла на скорость сайта?
- Можно ли обойтись без плагина?
- Чем транслит при загрузке отличается от «переименовать медиа»?
Разберите, зачем латиница в адресе картинки, а не только в заголовке статьи

Длинный URL с кодами вроде %D0%BF%D1%80 пугает клиента и хуже читается в аналитике. Латинское имя — короткий путь: проще отправить ссылку в мессенджер. Типичная ошибка — путать slug записи и адрес вложения: для фото с телефона нужна транслитерация имён при загрузке.
Поймите, что WordPress делает с именем файла «из коробки»

При загрузке WordPress вызывает sanitize_file_name (очистка имени): убирает опасные символы и пробелы. Кириллица не обязана стать латиницей — браузер часто показывает закодированный адрес. Плагины translit цепляются к фильтру sanitize_file_name и подменяют буквы. Ждать, что ядро сделает всё само, не стоит; BEA Sanitize Filename только чистит, но не переводит кириллицу.
Схема при загрузке фото:
Файл с телефона → WordPress очищает имя → фильтр sanitize_file_name → плагин translit (если включён) → файл сохраняется в uploads с латинским именем → в медиатеке «Скопировать URL» даёт читаемый путь
Выберите плагин транслитерации вместо кода в functions.php

На shared-хостинге безопаснее плагин из WordPress.org, чем сниппет в functions.php: ошибка в коде может заблокировать админку. В реальном проекте хватает одного из двух вариантов ниже.
| Инструмент | Транслит имён файлов при upload | Кому подходит |
|---|---|---|
| Cyrlitera (Themeisle) | Да, новые вложения; опция lowercase | Нужен простой интерфейс на русском, 40k+ установок, версия 1.3.7 (2026-09-30) |
| Cyr-To-Lat | Да, attachment file names; фильтр ctl_pre_sanitize_filename | Нужна альтернатива и WP-CLI команда regenerate для продвинутой поддержки |
| Сниппет в functions.php | Да, если правильно повесить на sanitize_file_name | Только если хостинг запрещает плагины; обязателен бэкап и тест на копии сайта |
| Phoenix Media Rename и аналоги | Нет, это переименование уже загруженного | Когда старые имена уже в базе и их надо менять вручную |
Итоговый вердикт: для первой настройки возьмите Cyrlitera или Cyr-To-Lat, не ставьте оба сразу. Код в теме — запасной путь для опытных, не для «просто залить 30 фото с телефона».
Установите Cyrlitera и включите транслитерацию вложений
Перед первым экспериментом сделайте резервную копию сайта или проверьте на копии (staging). Настройте транслит вложений до тестовой загрузки — так вы быстрее увидите результат в медиатеке. Если лимит загрузки мешает тесту, смотрите как увеличить лимит загрузки файлов в WordPress.
- Шаг 1. В админке откройте Плагины → Добавить новый, в поиске введите Cyrlitera (или Cyr-To-Lat), установите и активируйте.
- Шаг 2. Откройте Настройки → Cyrlitera (у Cyr-To-Lat — свой пункт меню настроек).
- Шаг 3. Убедитесь, что включена транслитерация имён файлов при загрузке (attachment), а не только slug записей.
- Шаг 4. При желании включите приведение имён к нижнему регистру (lowercase), чтобы не путать Foto.jpg и foto.jpg.
- Шаг 5. Если раньше стоял другой плагин translit, деактивируйте его — два обработчика дают двойную транслитерацию или конфликт.
- Шаг 6. Сохраните настройки.
Проверьте тестовым фото, что настройка сработала
Не заливайте сразу всё портфолио.
Один файл с русским именем покажет, работает ли цепочка upload → translit → URL: подготовьте картинку вроде фото-кухня.jpg, залейте через Медиафайлы → Добавить новый, откройте запись и нажмите «Скопировать URL». Вставьте ссылку в новую вкладку — картинка должна открыться без 404, а в пути будут латиница и дефисы (foto-kuhnya.jpg), без цепочки %D0.
Результат, который вы получите сегодня: загрузка «фото-кухня.jpg» даёт foto-kuhnya.jpg, URL открывается, в плагине включена транслитерация вложений.
Спланируйте судьбу старых файлов с кириллицей в медиатеке
Часто ломается ожидание «нажму откат и всё вернётся». У Cyrlitera в FAQ указано: откат восстанавливает URL записей, но не переименовывает уже сохранённые файлы в uploads. Старые русские имена останутся, пока вы их отдельно не переименуете плагином типа Phoenix Media Rename или не перезальёте картинки и не обновите вставки в статьях.
План: новые фото — через translit; старые не трогать без списка вставок; перед массовым rename — бэкап. Перенос сайта — перенос WordPress на другой хостинг.
Избегите типичных ошибок: два плагина, FTP и импорт товаров
Два активных плагина translit — частая причина «странных» имён и сбоев при импорте CSV или загрузке товаров WooCommerce. Оставьте один. Ручное переименование файла по FTP без замены ссылок в базе данных ломает картинки в уже опубликованных статьях — WordPress в тексте хранит старый путь.
Имя латиницей не заменяет безопасность формата — для SVG см. загрузку SVG в WordPress. Редиректы slug настраивайте отдельно от медиа; старые вложения не трогайте без учёта вставок в статьях.
Дополните транслит alt-текстом и подписью для людей
Alt-текст и подпись пишите по-русски для людей, а не копируйте foto-kuhnya.jpg. Правило команды: на телефоне файлы можно не переименовывать — латиницу сделает WordPress при upload.
Нужна помощь с настройкой сайта, медиатеки и статей под заявки — смотрите услуги по созданию сайтов и продвижению статьями. Другие гайды по WordPress собраны в разделе статей.
Материал проверен: Андрей Дикий (создаёт сайты и продвигает их статьями, SEO/GEO).
Источники и проверка фактов: WordPress Developer Reference sanitize_file_name и хук sanitize_file_name; страницы плагинов Cyrlitera 1.3.7 и Cyr-To-Lat на WordPress.org; FAQ Cyrlitera про откат имён файлов; readme mihdan/cyr2lat на GitHub; wp-image-editor.com про кириллицу в именах; Themeisle Docs по Cyrlitera. Частотность запросов: Яндекс Вордстат на 2026-10-11, MCP недоступен, точные показы не получены.
Частые вопросы
Ломается ли кириллица в имени файла на всех хостингах одинаково?
Чаще проблема не в «злом хостинге», а в том, как браузер и почта показывают закодированный URL и как переносили сайт. Латиница в имени файла снижает сюрпризы при копировании ссылок и переносе. Для новых загрузок проще включить translit, чем лечить каждый кейс вручную.
Нужен ли именно Cyr-To-Lat, если уже стоит Cyrlitera?
Нет, достаточно одного плагина с включённой транслитерацией вложений. Второй дублирует работу и может конфликтовать. Выберите тот, чьи настройки вам понятнее, и отключите остальные translit-плагины.
Переименуются ли старые файлы в медиатеке после включения плагина?
Нет, автоматически при включении они обычно не меняются. Плагин действует на новые upload. Старые имена правят отдельным инструментом переименования медиа или перезаливкой с обновлением вставок в статьях.
Что будет с уже опубликованными статьями, где стоят старые картинки?
Пока вы не меняете путь к файлу в базе, статьи продолжают показывать старые URL. Транслит на новых загрузках не ломает опубликованный контент. Массовое переименование без плана — вот что даёт битые картинки.
Влияет ли транслит имени файла на скорость сайта?
Практически нет: один раз при загрузке имя обрабатывается за доли секунды. На скорость открытия страницы сильнее влияют размер картинки и кэш, а не латиница в пути.
Можно ли обойтись без плагина?
Теоретически да, через фильтр sanitize_file_name в коде темы, но для новичка риск выше. Плагин из каталога проще обновлять и отключить, если что-то пошло не так.
Чем транслит при загрузке отличается от «переименовать медиа»?
Транслит при upload меняет имя в момент заливки. Плагины переименования меняют уже существующую запись в медиатеке и должны синхронизировать ссылки в контенте. Для потока «30 фото с телефона» нужен первый вариант.
Вопросы по настройке WordPress — через форму на сайте (мессенджер, без обязательного созвона) или в канале t.me/DikiiTelegram.
Нужен сайт или статьи, которые находят поиск и нейросети?
Я делаю сайты на WordPress за 7 рабочих дней и веду публикацию статей с SEO- и GEO-оптимизацией — от 12 статей в месяц за 10 000 ₽ — чтобы вас находили в Яндексе, Google и в ответах Алисы, ChatGPT и Perplexity. Общение письменно, без звонков.
Сайт за 7 дней Статьи для сайта
Или напишите в Telegram: @SmartZayvka_bot
