0 Пользователей и 1 Гость просматривают эту тему.
  • 9 Ответов
  • 1726 Просмотров
*

progreCCor

  • Захожу иногда
  • 79
  • 3 / 0
В общем с в одном моем компоненте надо использовать транслитерацию с русского на английский язык.
вроде как это должно делаться с помощью таких строк

Код
$lang = JFactory::getLanguage();
$element->alias = $lang->transliterate($element->alias);

да вот беда что это не работает...
при трассировке увидел что у объекта $lang не установлен transliterator

кто может помочь советом?
как правильно делать?
*

b2z

  • Глобальный модератор
  • 6935
  • 752 / 0
  • Разраблю понемногу
Re: Транслитерация не работает
« Ответ #1 : 05.11.2013, 15:32:49 »
Сюда по конструктору, JLanguage ищет файлик /language/ru-RU/ru-RU.localise.php и если в нем есть класс Ru_RULocalise и метод transliterate, то подключает его.
*

progreCCor

  • Захожу иногда
  • 79
  • 3 / 0
Re: Транслитерация не работает
« Ответ #2 : 05.11.2013, 15:44:51 »
да. причем если я явно прописываю $element->alias=ru_RULocalise::transliterate($element->alias);
то все работает

вопрос в том, почему не работает стандартный способ?
*

progreCCor

  • Захожу иногда
  • 79
  • 3 / 0
Re: Транслитерация не работает
« Ответ #3 : 05.11.2013, 15:47:40 »
p.s.
на момент использования в моем коде объект $lang уже создан и потому просто возвращает то что есть
*

progreCCor

  • Захожу иногда
  • 79
  • 3 / 0
Re: Транслитерация не работает
« Ответ #4 : 05.11.2013, 15:50:18 »
вроде должен срабатывать стандартный способ если заполнен transliterator
но к сожалению этого не происходит
transliterator на момент вызова пуст.

Я не могу найти стандартные средства транслитерации.

я знаю что скажем этот способ используется при создании алиаса статьи, но не могу найти это место в коде Joomla.
может хоть это подскажете?
*

b2z

  • Глобальный модератор
  • 6935
  • 752 / 0
  • Разраблю понемногу
Re: Транслитерация не работает
« Ответ #5 : 05.11.2013, 16:06:51 »
очень странно. Место в коде я тоже не знаю, но скорее всего там будет $lang->transliterate($element->alias);
Ну попробуйте дебажнуть конструктор и посмотерть, почему не инициализируется свойство transliterator.
*

progreCCor

  • Захожу иногда
  • 79
  • 3 / 0
Re: Транслитерация не работает
« Ответ #6 : 05.11.2013, 16:33:42 »
я просмотрел все места в которых вызывается transliterate.
и что-то мне подсказывает что в статьях сделано все по-другому
*

progreCCor

  • Захожу иногда
  • 79
  • 3 / 0
Re: Транслитерация не работает
« Ответ #7 : 05.11.2013, 16:41:44 »
мне почему-то не удалось найти какой либо документации о правильном применении transliterate
вообще нигде!
*

b2z

  • Глобальный модератор
  • 6935
  • 752 / 0
  • Разраблю понемногу
Re: Транслитерация не работает
« Ответ #8 : 05.11.2013, 17:06:25 »
мне почему-то не удалось найти какой либо документации о правильном применении transliterate
вообще нигде!
Ну видимо её нет... Лично я её не использовал ни разу, поэтому конкретно не могу ничего посоветовать.
*

smart

  • Администратор
  • 6474
  • 1315 / 15
  • Хочешь сделать хорошо — сделай!
Re: Транслитерация не работает
« Ответ #9 : 03.01.2014, 23:02:30 »
Я бы посмотрел в сторону JApplicationHelper::stringURLSafe...
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

bootstrap grid (адаптивная сетка) не работает в позициях модулей

Автор Romsan21

Ответов: 0
Просмотров: 308
Последний ответ 25.05.2017, 20:16:36
от Romsan21
Перенесено: В английской версии сайта не работает блог категорий

Автор b2z

Ответов: 0
Просмотров: 152
Последний ответ 24.05.2017, 09:39:10
от b2z
Не работает псевдоним пункта меню

Автор djumfan

Ответов: 10
Просмотров: 1090
Последний ответ 18.03.2017, 19:10:01
от tkm
Не работает поиск в переопределении констант

Автор турист

Ответов: 0
Просмотров: 399
Последний ответ 08.07.2016, 03:45:56
от турист
Не работает Альтернативный макет для блога категорий

Автор kik84

Ответов: 5
Просмотров: 702
Последний ответ 28.04.2016, 23:10:14
от Grigory S.