• Отклонено

    0

    Модификатор транслитерации в Smarty

    Денис Ефремов Обновлен 4 года назад в категории CMS Шаблоны 2

    Мне понадобился для добавления css классов фильтрам. /core/smarty/rsplugins/modifier.translit.php


    <?php
    /**
    * Модификатор транслит
    */
    function smarty_modifier_translit($text)
    {
    $text = mb_strtolower($text);

    $gost = array(
    // Буквы
    'а'=>'a',
    'б'=>'b',
    'в'=>'v',
    'г'=>'g',
    'д'=>'d',
    'е'=>'e',
    'ё'=>'yo',
    'ж'=>'zh',
    'з'=>'z',
    'и'=>'i',
    'й'=>'j',
    'к'=>'k',
    'л'=>'l',
    'м'=>'m',
    'н'=>'n',
    'о'=>'o',
    'п'=>'p',
    'р'=>'r',
    'с'=>'s',
    'т'=>'t',
    'у'=>'u',
    'ф'=>'f',
    'х'=>'h',
    'ц'=>'c',
    'ч'=>'ch',
    'ш'=>'sh',
    'щ'=>'shh',
    'ъ'=>'j',
    'ы'=>'y',
    'ь'=>'',
    'э'=>'e',
    'ю'=>'yu',
    'я'=>'ya',
    // Всякие знаки препинания и пробелы
    ' '=>'-',
    ' - '=>'-',
    '_'=>'-',
    //Удаляем
    '.'=>'',
    ':'=>'',
    ';'=>'',
    ','=>'',
    '!'=>'',
    '?'=>'',
    '>'=>'',
    '<'=>'',
    '&'=>'',
    '*'=>'',
    '%'=>'',
    '$'=>'',
    '"'=>'',
    '\''=>'',
    '('=>'',
    ')'=>'',
    '`'=>'',
    '+'=>'',
    '/'=>'',
    '\\'=>'',
    );

    return strtr($text, $gost);
    }