Здравствуйте дорогие друзья! В данной заметке речь пойдет о том, как не вмешиваясь в код можно переименовать стандартный перевод на сайте под управлением Joomla.
Впервые с переопределением перевода я познакомился на Друпал и думал вот бы и на джумла такое. Но какова была моя радость, когда я открыл такое и в joomla 2.5. Это очень удобный инструмент на мой взгляд. Представьте ситуацию, когда вам необходимо заменить одно слово в переводе во фронтальной части сайта, например, заменить слово «Опубликовано» на слово «Дата». Конечно, есть вариант — подключиться по ftp, открыть языковые файлы и внести соответствующие изменения. Но есть другой способ, более проще. Как это сделать?
Открываем панель управления joomla, далее идем в системное меню Расширения -> Менеджер языков -> Переопределение языковых констант. Теперь нам необходимо создать новый перевод, который перезапишет стандартный существующий. Вообще каким образом происходит перезапись? В папке language лежат файлы локализаций, в нашем случае здесь лежат файлы двух языков — русского и английского (папки en-GB и ru-RU). Но по мимо этого здесь лежит и папка под названием «Overrides», т.е. перезаписываемые. Перед тем как выдать значение перевода константы Joomla сначала обращается в папку «overrides» и если здесь ничего нет, то обращается в папку с языковыми файлами (зависит от того, какой язык установлен по умолчанию в админке).
Так вот, надеюсь понятно каким образом происходит перезапись. Теперь давайте теперь создадим новый перевод. Чтобы создать жмем по знакомой нам оранжевой кнопочке «Создать». Обратите внимание в правой части окна выдается подсказка, что такое языковая константа и ее значение.
Искать мы будет значение «Опубликовано», вбиваем в строку поиска, ставим переключатель в положение «Значение» и жмем «Найти». В результатах поиска может отобразиться не одна константа со значениями. Их может быть много и поэтому, чтобы точно знать нам необходимо знать языковую константу. Ее можно посмотреть в файлах шаблона. Но я обычно подбираю чисто интуитивно. В данном случае я выбрал первый найденный элемент. Щелкаем по нему левой кнопкой мыши и у нас автоматически заполнятся поля «Языковая константа» и «Текст». Далее, в поле «Текст» меняем слово «Опубликовано» на слово «Дата:» и после чего жмем на кнопку «Сохранить». Теперь если обновить фронтальную часть сайта, то увидим, что слово «Опубликовано» изменилось на слово «Дата:».
[ad#728x90-middle]
Если у вас не поменялось значение, то скорее всего вы выбрали не тот элемент поиска, попробуйте выбрать другой, подставив другие значения полей языковая константа и значение.
Теперь давайте зайдем по ftp по следующему адресу — language/overrides, то увидим, что у нас в данной папке появился один файлик с названием — ru-RU.override.ini. Откройте его (можно блокнотом) и вы увидите в нем константы с их новыми значениями, т.е. те значения, которые мы создали в панели управления.
Напоследок хотелось бы сказать, что таких переопределений можно создать сколько угодно и они все аккуратно запишутся в файл — ru-RU.override.ini. А на этом у меня все. Теперь вы знаете как быстро можно поменять перевод, не влезая в код. Всем спасибо за внимание!