Вот начал заниматься выносом всего что можно в языковые файлы. Тоесть все надписи которые были тупо зашиты в код скоро будут идти в отдельном конфиге, благодаря чему можно будет делать различные локализации и изменять стандартные надписи. В этой теме думал послушать разные пожелания связанные с данным вопросом. Может есть у кого идеи какие?
Даешь каждую букафку в отдельный Конфиг?))
А так, хотелось бы, что бы понять где какой файл и за что он отвечает было проще и поменять все надписи на сайте так же
Drunya, предлагаю 2 альтернативных подхода к локализации:
1) Один php-файл с полной локализацией (или архив с php-файлами, каждый из которых отвечает за отдельный модуль).
Достоинства: реализуемое переключение языка интерфейса в админке; удобство распостранения локализаций.
Недостатки: при разработке собственных модулей - придется подстраиваться под общую систему; неудобство при необходимости в локализации только некоторых из модулей.
2) Файлы локализации для каждого из модулей.
Достоинства: возможность локализации части модулей; удобство локализации собственных модулей.
Недостатки: сложность с распространением; сложность с локализацией всех модулей сразу.
По-моему первый вариант все же предпочтительнее.
Редактирование некоторых наиболее часто изменяемых строк лучше всего реализовать по аналогии с юкозовской "Изменить строки" (или как там называется этот инструмент).
пока локализация делаеться только на модули. Те надписи которрые вшиты в код. Например сообщения об ошибках. Пока делаю так:
Один файл, в котором все эти надписи записаны каждая с новой строки(порядок в котором они расположены обязателен). Поменять локализацию можно простой заменой одного этого файла. Потом сделаю в админке кнопку, по нажатию которой будет меняться этот файл и следовательно меняться локализация. Вроде это самый простой способ. Единственный минус - это то что надо соблюдать порядок строк в этом файле, но если подумать это не представляеться сложным. Пишите ваши мысли по этому поводу.
Wasja, можно разжевать твой первый вариант, а то я совсем не понял
Drunya, первый вариант - это собрать все люкализации в одном месте (по аналогии с тем, как шаблоны всех модулей собраны в одном каталоге). Второй - в каталоге каждого из модулей ложить свой файл локализации.
Ну в общем я так порылся и понял что даже если все впихнуть в один файл, то он получаеться не таким уж и большим. Так что так и сделал все в одном файле. Как по мне, так очень удобно. Файл будет находиться в каталоге /sys/settings/languages/
Например файл, в котором все тексты из модулей, вышел чуть больше 200 строк, при том что некоторые из них совсем короткие(есть даже по несколько символов). Так что нет смысла делить на кучу файлов. Все равно если переводить, то все сразу.