translit it! 1.9.1: возвращаюсь к своему плагину для WordPress

Содержание
  1. Маленький инструмент для своих сайтов
  2. Что он делает сейчас
  3. Что изменилось в последних версиях
  4. Что важно при обновлении
  5. Где взять

Среди моих проектов есть небольшой долгожитель — translit it!. Это плагин для WordPress, который делает латинские адреса из русских названий. В конце октября вернулся к его развитию: обновил настройки, обработку запросов и интерфейс. Сейчас доступна версия 1.9.1 с русской локализацией.

Постер translit it! 1.9.1: набор инструментов для плагина WordPress, карточки русского и английского языка и обновлённые настройки
Возвращаюсь к развитию translit it! Иллюстрация к записи о версии 1.9.1, созданная с помощью AI.

Маленький инструмент для своих сайтов

В каталоге WordPress плагин появился ещё в июле 2012 года. Я делал его для себя: хотелось, чтобы у русскоязычных записей получались удобные адреса без постоянного ручного редактирования.

Задача простая. У записи остаётся заголовок «Привет, мир!», а часть адреса можно получить в виде privet-mir. Плагин работает и со страницами, рубриками и другими элементами таксономий.

В итогах мая 2023 года я уже рассказывал о нём: тогда добавлял Яндекс Cloud и писал, что код хорошо бы переработать основательнее. В этот раз до такой переработки наконец дошли руки.

Что он делает сейчас

В основе остаётся локальная транслитерация: русские буквы заменяются латинскими по выбранной таблице. Есть обычный и исторический ISO-подобный варианты. Для этого не нужны API-ключи или внешний переводчик, названия обрабатываются на самом сайте.

Если хочется получать адреса с английским переводом названия, можно отдельно подключить Яндекс. Это необязательный режим со своим API-ключом. Исходный текст в таком случае отправляется сервису перевода, поэтому для обычной локальной транслитерации я бы начинал с локального режима.

Резервную транслитерацию можно включить на случай ошибки перевода. Тогда недоступность внешнего сервиса не мешает получить латинский slug.

Что изменилось в последних версиях

Начал с обработки настроек. В линейке 1.8 переработал сохранение параметров: права доступа, проверку запросов, проверку входных данных и вывод значений. Эта работа включала исправление проблемы CSRF и stored XSS, указанной в истории изменений плагина.

Также обновил работу с переводчиком: ограничил ожидание ответа и повторные обращения после сбоя в рамках одного запроса WordPress. Обычная локальная транслитерация сохранила прежние таблицы.

В 1.9.0 появился новый экран настроек: карточки режимов, пример будущего адреса и отдельный блок подключения Яндекса. Сохранённый ключ больше не выводится обратно в страницу: его можно оставить, заменить или явно удалить.

Русский экран настроек translit it! 1.9.1: карточки режимов, локальная транслитерация и пример адреса; демонстрационная установка
Настройки translit it! 1.9.1. Скриншот демонстрационной установки из каталога WordPress.org; полный размер открывается по нажатию.

В 1.9.1 добавил английские исходные строки и полный русский перевод интерфейса. Русский перевод уже лежит внутри плагина и работает без ожидания отдельного языкового пакета каталога. Язык берётся из настроек WordPress для администратора.

Что важно при обновлении

Текущая версия рассчитана на WordPress 7.1 и новее, PHP 8.4 и новее. На старом окружении сначала нужно разобраться с совместимостью.

Существующие адреса плагин массово не переписывает. При этом ручное изменение или повторное создание slug по-прежнему может изменить ссылку — это важно учитывать при работе со старыми записями.

Где взять

Плагин снова доступен в каталоге WordPress.org. Исходники и релизы теперь есть в репозитории на GitHub, а описание возможностей и историю развития собрал на отдельной странице проекта.

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

Есть что добавить?

Ваш email не публикуется. Обязательные поля отмечены *