[Translitor] - Альтернатива транслитерации псевдонимов

Оптимизированная альтернатива всем известного, популярного компонента translit.

Сравним вот такую фразу
«На _ (Золотом крыльце) / Сидели. Царь! Царевич»

Сравните что творит Translit
«na-(zolotom-kryilcze)-/-sideli.-czar!-czarevich»

С тем, как отработал Translitor
na-zolotom-kryltse-sideli-tsar-tsarevich



— Класс транслитерации позаимствован из Laravel, и немного допилен. Это принципиально другая работа, несмотря на схожее поведение.

— Улучшена фильтрация ненужных символов. В отличие от Translit, который пропускает скобки, подчеркивания, слеши, различные служебные символы, Translitor их не пропускает. В поле alias попадают только буквы, цифры. Все остальное заменяется разделителем-заменителем (дефисом)

— Оптимизирована таблица транслитерации. Мне не нравилось как меняются некоторые русские буквы

Вот и все. В целом никаких настроек не требуется. Компонент работает сразу из коробки.
Николай Савин
18 апреля 2019, 10:00
modx.pro
9
742
+14
Поблагодарить автора Отправить деньги

Комментарии: 15

Павел Голубев
18 апреля 2019, 10:07
0
А где можно сам допиленный класс Translitor глянуть?
Yar
Yar
18 апреля 2019, 10:56
+1
теперь у компонента уже 2 скачивания) Спасибо!
    UDAV
    18 апреля 2019, 11:22
    2
    +6
    Обычный translit тоже так может!
    Настройка friendly_alias_restrict_chars делаем alphanumeric и получаем тоже самое, без лишнего мусора.
      Alexey T
      18 апреля 2019, 14:22
      3
      +2
      Или так:
      'friendly_alias_restrict_chars' => 'pattern',
      'friendly_alias_restrict_chars_pattern' => '/[\0\x0B\t\n\r\f\a&=+°%#«»…<>—№!",.()\/\~:`@\?\[\]\{\}\|\^\'\\\\]/',
        Николай Савин
        18 апреля 2019, 17:32
        +1
        Возможно, я не знал. Как по мне, подобный функционал должен работать сразу. Может я и не прав.
        Напомню, меня еще не устраивала транслитерация некоторых русских букв.
          Николай
          18 апреля 2019, 18:53
          0
          Согласен, теперь буду этот транслит использовать на всех сайтах
        Anton
        20 апреля 2019, 10:56
        +1
        Поставил себе, работает отлично. Спасибо за компонент!
        gruzoveek
        26 апреля 2019, 09:14
        +1
        присоединяюсь к благодарностям!
          iWatchYouFromAfar
          02 мая 2019, 01:28
          +1
          Translitor вырезает все точки, это не очень хорошо, например когда используешь плагины или компоненты для транслитерации других вещей (например папок или файлов). Посему в translit можно указать свой паттерн, а тут нет. Это большой минус.
          Andrew
          06 июля 2019, 09:57
          0
          Надо попробовать у себя, автору спасибо.
            Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
            15