Правильная транслитерация старых постоянных ссылок

Начиная с версии 160707 wp-translitera обзавелся очень нужной функцией — транслитерация ссылок. Теперь, если вы перевели в латиницу свои старые ссылки, ваши посетители и поисковые роботы не «потеряют» ваши статьи. Логика заключается в том, что в случае, когда ссылка никуда не приводит — пользователь должен получить 404 ошибку или страницу заглушку, плагин пытается транслитерировать саму ссылку и перенаправляет посетителя на эту страницу. Для поисковых систем указан 301 редирект — то есть постоянное перемещение страницы, а пользователь, практически не замечает изменений. Пример действия:

Снимок1

Снимок2

И…  да! все верно плагин может исправлять как ссылку целиком так и отдельные ее части, я решил что это может быть очень полезно!

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

Включить функцию можно в админ панели в настройках плагина:

Сним

Такого функционала я пока ни у кого не видел! Так что пользуйтесь.

В теории эта функция может исправить положение тех, кто пользовался другими плагинами (типа rus-to-lat, cyr-to-lat) и теперь у них не работают старые ссылки, но при условии, что их правила транслитерации ответствуют моим. В перспективе, возможно, включу функционал исправления после чужих плагинов.

Скачать плагин можно с сайта WordPress или установить непосредственно из каталога плагинов.

 

21 комментарий к “Правильная транслитерация старых постоянных ссылок”

  1. Евгений, здравствуйте! Как у вас дела ? У меня очень срочный и важный вопрос по WP Translitera. Не могу обновиться до PHP 8.3, выдает ошибку Fatal error: Array and string offset access syntax with curly braces is no longer supported на разных страницах нашего сайта. Можно ли в коде плагина заменить $tr_rules[strtoupper($key)] = strtoupper($value{0}).substr($value, 1); на $tr_rules[strtoupper($key)] = strtoupper($value[0]).substr($value, 1); ?? Не поврежу ли я что-то таким способом или как-то можно обновиться ? У нас сайт самописный и развёрнут в WordPress до меня, я сейчас разбираюсь и пытаюсь восстановить и исправить ошибки

    Ответить
  2. Здравствуйте, не могли бы вы обновить плагин под современные тенденции. Время идёт, а уж три года как не обновляли плагин. Спасибо.

    Ответить
  3. Здравствуйте, Евгений Владимирович! Я предполагаю, что Вы не заходите на Ваш сайт, но пишу Вам в надежде, что Вы получите уведомление о комментарии и прочтёте его. Пожалуйста, обновите Ваш плагин. Мне (как и многим другим, кто чьи сайты работают с Вашим плагином) не хотелось бы устанавливать другой плагин, тем более, что замена кириллицы в них отличается от замены, которую производит Ваш плагин. Я понимаю, что плагин возможно и не требует обновления и будет работать исправно, но обновить его будет правильно и приятно для многих. Если не трудно. С уважением, Иван.

    Ответить
  4. А за что отвечает настройка «Не использовать транслитерацию во фронтенде (включите, когда есть проблема во фронтенде)»?

    Ответить
  5. Добрый день!
    На моём сайте сейчас постоянные ссылки вида /blogs/%author%/%postname% и стоит плагин Cyr to Lat enhanced. Меня всё устраивало, пока не появился автор с кириллическим ником. Ник не транслитерируется установленным плагином. Ваш плагин транслитерирует ник автора? И может ли он заменить Cyr to Lat enhanced без последствий?

    Ответить
    • Доброго времени суток!
      не совсем понимаю как можно было создать автора с кирилическим ником, вроде WP такого не допускает. транслитерация существующего ника пользователя на текущий момент не предусмотрена. Можно ваш список установленных плагинов?

      Ответить
      • В общем проблема-то была из-за кириллического ника в ссылке. Ссылка выдавала ошибку 404. Виновником оказался плагин Cyr to Lat enhanced. Отключил его и подключил ваш плагин. Теперь ссылка работает правильно.
        Думал о транслитерации ников в ссылках. Этого делать не нужно, иначе со временем появятся двойники.

        Ответить
  6. Здравствуйте.

    А может Ваш плагин исправить такую ситуацию:
    достался сайт с установленным WooComerce. Картинки товаров залиты с названием файлов кириллицей. Товаров много.

    Возможно ли исправить эту ситуацию, изменить название файлов картинок на латинские символы?

    Ответить
    • День добрый. Имена файлов нет в текущей версии (очень надеюсь в перспективе добавить возможность корректного переименовывания файлов). Заголовки да

      Ответить
  7. Привіт.

    Плагін не перейменовує файли, а тільки шляхи до нього?
    я для перевірки завантажив фото з кир.назвою плагін її змінив в адмінці на латиничну, але в папці upload залишилась кирилиця.

    Чи можна настроїти його таким чином, щоб він завантажені фотографії з кириличними назвами конвертував у латиничні? Проблема в тому, що при переносі між хостингами злітають кириличні назви через різні кодування.

    Ответить
    • Добрий день! для нових файлів перевірте налаштування: http://yur4enko.com/snimok
      існуючі файли плагін не вміє переіменовувати, в задумці є такий функционал, але поки я не знайшов рішення для повноцінної реалізації

      спробуйте попросити хостера змінити кодування для вашого домену

      Ответить
      • Так, це допомогло. Дякую.
        А перший раз було враження, що тільки в адмінці файли латинкою, а на сервері залишалася кирилиця.

        Ответить
  8. Использование, а потом последующее отключения плагина приводит к испорченному сайту. Предыдущие ссылки не восстанавливаются, а некоторые переведены в стиле «contactы» (было контакты).

    Так что советую либо исправить эти досадные ошибки (мне пришлось сайт из бэкапа поднимать), либо не рисковать пользоваться плагином.

    Ответить
    • исправить это увы не возможно, тк плагин как и его аналоги вносит изменения в БД, и прошу обратить внимание он не переводит, а транслитерирует согласно общепринятых правил.
      PS. contactы быть не может)) ы -> y по правилам.

      Ответить
      • Сам в шоке, но так оно и было. Ведь логика побуквенной замены должна исключать такого рода ошибки. В код не лез, так что вам виднее что это могло быть.

        Ответить
      • добрый вечер. Я установил старый RusToLat до того, как разобрался что к чему, пока что он вроде работает. У вас есть опыт, Евгений, посоветуйте, пожалуйста, что безопаснее – оставить то, что работает и так или таки обновиться?
        этот RusToLat

        У вашего плагина 9 пятизвёздных оценок на 4000 установок — хороший результат. У исходного RusToLat 10 пятизвёздных на 200 000, включая оценку двухнедельной давности. Одна низкая оценка с комментарием «старый» — то есть плагин, вроде как ничего не ломает. Вам известны какие-нибудь критические уязвимости, риски, связанные с его использованием?

        Чем ваш плагин принциально лучше? Могу ли я попросить дать на странице вашего пагина
        https://wordpress.org/plugins/wp-translitera/

        дать описание фич, преимуществ и отличий от других вариантов?

        спасибо

        Ответить
        • Доброго времени суток, в следующей версии подробно опишу все фишки плагина.
          главное преимущество моего плагина описана как раз в этой статье. ну и кроме мой плагин единственный совместимый с WP-ML

          Ответить

Добавить комментарий для Юрченко Евгений Отменить ответ

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.