Как сделать локализацию?

Добрый день.
Поясните, пожалуйста, пошагово какие файлы надо создать/изменить для полноценной локализации сайта.
Делаю чешский язык.

16 комментариев

avatar
достаточно посмотреть в \templates\language\ и все поймете
avatar
ну вот, пока формулировал мысль, ответ уже дан. :)
надо было обновить страницу перед отправкой комментария.
avatar
папка LS/templates/language/

Можно отредактировать дефолтный файл с русским языком, это russian.php.
Или добавить свой, назвав его, например, xxx.php. Только тогда не забудьте изменить язык в конфиге.
  • ok34
  • 0
avatar
У меня установлен плагин AceAdminPanel.
В папке ../templates/language/ создал файл czech.php.
Далее в админке иду в ../admin/site/ и выбираю «Текущий язык: czech».
Результат:
Warning: include(/home/admin/domains/***.cz/public_html/plugins/aceadminpanel/templates/language/czech.site_settings.php) [function.include]: failed to open stream: Нет такого файла или каталога in /home/admin/domains/***.cz/public_html/plugins/aceadminpanel/classes/modules/lang/Lang.class.php on line 177

Warning: include() [function.include]: Failed opening '/home/admin/domains/***.cz/public_html/plugins/aceadminpanel/templates/language/czech.site_settings.php' for inclusion (include_path='.:/usr/local/lib/php:/home/admin/domains/***.cz/public_html:/home/admin/domains/***.cz/public_html:/home/admin/domains/***.cz/public_html/engine/classes') in /home/admin/domains/***.cz/public_html/plugins/aceadminpanel/classes/modules/lang/Lang.class.php on line 177

Warning: array_merge() [function.array-merge]: Argument #2 is not an array in /home/admin/domains/***.cz/public_html/plugins/aceadminpanel/classes/modules/lang/Lang.class.php on line 178


Методом научного тыка выяснилось, что надо создать еще файлы:
../domains/***.cz/public_html/plugins/aceadminpanel/templates/language/czech.php
../domains/***.cz/public_html/plugins/aceadminpanel/templates/language/czech.site_settings.php
../domains/***.cz/public_html/plugins/aceadminpanel/templates/language/czech.tools_comments.php

Что ни фига не очевидно на самом деле. Есть вообще документация к движку внятная или все на коленке? :)
  • Vig7
  • 0
avatar
Еще и его править пришлось:
../domains/***.cz/public_html/templates/skin/simple/settings/language/
Нет правда, ребята, вообще не очевидно что где лежит.
Например, в «прямом эфире» слово «комментарии» находится в файле ../domains/***.cz/public_html/templates/language/,
а «публикации» — в ../domains/***.cz/public_html/templates/skin/simple/settings/language/.
Где логика?
avatar
Что ни фига не очевидно на самом деле.
Для того чтобы было фига очевидно уж будьте добры пишиче что у Вас установлено. Вам сказали где лежат файлы базовой комплектации… Экстрасенсы гадающие что у кого установлено на каникулах.
avatar
Да, а то, что создатели плагинов кладут языковые файлы в одно место, создатели темплейтов во второе, а файлы базовой комплектации лежат в третьем и об этом НИГДЕ НЕ НАПИСАНО, это по-вашему нормально?

Да, и почему «публикации» из «прямого эфира» вдруг переехали в языковой файл темплейта simple, насмотря на то, что они никак не отличаются от базовой комплектации?
avatar
да именно так, базовая комплектаци это базовая комплектация,
текстовки плагинов — это текстовки плагинов и никакого отношения к базовой комплектации они не имеют,
текстовки ! НЕ дефолтных шаблонов — это именно текстовки ! НЕ дефолтных шаблонов шаблоном и никакого отношения к базовой комплектации они не имеют,

сделано так для того чтобы при использовании плагинов и ! НЕ дефолтных шаблонов не нарушать ядро (в том числе и текстовок) движка и чтобы при ОБНОВЛЕНИИ ядра у Вас ничего не затерлось.

и по моему это не нормально а правильно.
avatar
ну а если уж взялись чтото делать, то для начала разберитесь что и для чего сделано.
avatar
Да я не против. Мне не понятно, почему этого нигде не написано? Вот вам, как программисту (угадал?) это очевидно. А вот мне, экономисту по образованию, это совсем не очевидно. Как видите, я разобрался быстро. Но дело-то в том, что нет никакой, даже базовой документации по этому вопросу.
avatar
Документация:
Движок переводится отдельно.
Плугины переводятся отдельно.
Шаблоны переводятся отдельно.
Расположены языковые файлы в аналогичных папках.

ПС
Иногда необходимо лезть в код плугина/шаблона/движка так как бывает, что не все фразы вынесены в языковой файл.
avatar
Учитывая отсутствие документации, начать делать — это единственный способ разобраться.
avatar
я и не отправлял Вас к документации и не указывал на нее, я указал именно на то что поможет разобраться — !на основании именно той информации которая опубликованна в топике
avatar
Также необходимо перевести шаблоны писем на емайлы в каталоге /notify/ у шаблона
  • ort
  • 0
avatar
В templates/skin/simple/paging.tpl есть обращение к
{$aLang.back}
и
{$aLang.forward}
Однако, ни в одном языковом файле я не могу найти ни «Вперед» и «Назад». Подскажите куда смотреть.
avatar
Нашел.
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.