• DONATE to NULLED!
    Форуму и его команде можно помочь, мотивировать модераторов разделов.
    Помогите модератору этого раздела killoff лично.

Помощь Украинские буквы в ЧПУ DLE 9.2-9.3

Статус
В этой теме нельзя размещать новые ответы.

yura

Гуру форума
Регистрация
5 Апр 2006
Сообщения
466
Реакции
69
Есть украиноязычный сайт на ДЛЕ 8,2. Там буквы "i", "ї", "є" в заголовках корректно заменяются на их аналоги в транслите...

В 9,2 и 9,3 буква "Ї" еще передается, а вот "і" попросту выпадает с ЧПУ.. И получается ЧПУ типа vsm вместо visim

Как можно полечить этот досадный баг? Я такпонимаю это что-то из области когда после смены версии буква "Х"стала передаваться не "h", а "x"
 
лечи тут engine/modules/functions.php строка 80 начало функции totranslit вот ее и кувыряй
 
  • Нравится
Реакции: yura
  • Заблокирован
  • #3
а еще лучше было бы перейти на utf-8 там подобных проблем бы не было... Хотя скорее всего все равно бы пришлось допиливать.
 
Дописал в нужном файле украинскую букву "і" (ее там и в помине не было, хотя "ї" есть), НО, не работает блин :(

Добавлено через 11 минут
Изменил транслит букви "и" с "i" на "Y", все равно прописывает і... нашел чтот касающееся транслита в 2 файлах, в обоих сделал все как нада. Где еще может быть? поиск по файлам ничего не дает (((
 
Дописал в нужном файле украинскую букву "і" (ее там и в помине не было, хотя "ї" есть), НО, не работает блин :(

Добавлено через 11 минут
Изменил транслит букви "и" с "i" на "Y", все равно прописывает і... нашел чтот касающееся транслита в 2 файлах, в обоих сделал все как нада. Где еще может быть? поиск по файлам ничего не дает (((
У меня ДЛЕ 9.3 УТФ-8 (кодировка не столько важна ...)
Берем два файла языковых
website.lng
adminpanel.lng
Находим функцию:
$ langtranslit
и меняем на следующее, в каждом из этих файлов:
PHP:
$langtranslit = array(
'а' => 'a', 'б' => 'b', 'в' => 'v',
'г' => 'g', 'д' => 'd', 'е' => 'e',
'ё' => 'e', 'ж' => 'zh', 'з' => 'z',
'и' => 'y', 'і' => 'i', 'й' => 'y', 'к' => 'k',
'л' => 'l', 'м' => 'm', 'н' => 'n',
'о' => 'o', 'п' => 'p', 'р' => 'r',
'с' => 's', 'т' => 't', 'у' => 'u',
'ф' => 'f', 'х' => 'h', 'ц' => 'c',
'ч' => 'ch', 'ш' => 'sh', 'щ' => 'sch',
'ь' => '', 'ы' => 'y', 'ъ' => '',
'э' => 'e', 'ю' => 'yu', 'я' => 'ya',
"ї" => "yi", "є" => "ye",

'А' => 'A', 'Б' => 'B', 'В' => 'V',
'Г' => 'G', 'Д' => 'D', 'Е' => 'E',
'Ё' => 'E', 'Ж' => 'Zh', 'З' => 'Z',
'И' => 'Y', 'І' => 'I', 'Й' => 'Y', 'К' => 'K',
'Л' => 'L', 'М' => 'M', 'Н' => 'N',
'О' => 'O', 'П' => 'P', 'Р' => 'R',
'С' => 'S', 'Т' => 'T', 'У' => 'U',
'Ф' => 'F', 'Х' => 'H', 'Ц' => 'C',
'Ч' => 'Ch', 'Ш' => 'Sh', 'Щ' => 'Sch',
'Ь' => '', 'Ы' => 'Y', 'Ъ' => '',
'Э' => 'E', 'Ю' => 'Yu', 'Я' => 'Ya',
"Ї" => "yi", "Є" => "ye",
);

И все отлично работает :)
 
Мдаааа... Вот где-где, а в языковых файлах дримвивер из-за их расширения не искал... Сейчас попробую :) Получается, что как делать транслит прописано в 4 файлах, в 2 из которых оно реально не нужно походу :)
 
Мдаааа... Вот где-где, а в языковых файлах дримвивер из-за их расширения не искал... Сейчас попробую :) Получается, что как делать транслит прописано в 4 файлах, в 2 из которых оно реально не нужно походу :)
Оно нужно, но для других целей
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху