Joomla 1.5: Создание плагинов группы Content - INI - файл плагина
Индекс материала |
---|
Joomla 1.5: Создание плагинов группы Content |
PHP - файл плагина |
INI - файл плагина |
Все страницы |
INI - файл (ы) плагина
Для мульти язычной поддержки принято использовать INI - файлы. Перевод будет работать в следующих местах:
- Тэги XML файла – манифеста, например: <description></description>
- XML атрибуты label и description из тегов <param /> файла – манифеста
- JText:: _ (здесь);
Языковых файла, если вы взялись за это конечно, возможно придётся создать два ( для одного языка ) : один для админки и один для сайта. Назвать их нужно соответственно пути расположения вашего плагина. Например, если бы мы создавали плагин контента, названный ' example', и он установлен в plugins/content/example, то тогда файлы нужно назвать так:
- en-US.plg_content_example.ini (Frontend)
- en-US.plg_content_example.sys.ini (Site)
Ниже пример процесса построения мульти язычной поддержки:
<param name="mode" type="list" default="1" label="PLG_CONTENT_EXAMPLE_MODE" description="PLG_CONTENT_EXAMPLE_EMAILS_DISPLAYED"> <option value="0">PLG_CONTENT_EXAMPLE_NONLINKABLE_TEXT</option> <option value="1">PLG_CONTENT_EXAMPLE_LINKABLE_TEXT</option> </param>
Локализованные строки переведены в ini файле:
PLG_CONTENT_EXAMPLE_MODE=Mode PLG_CONTENT_EXAMPLE_EMAILS_DISPLAYED=Select how the e-mails will be displayed PLG_CONTENT_EXAMPLE_NONLINKABLE_TEXT=Nonlinkable text PLG_CONTENT_EXAMPLE_LINKABLE_TEXT=As linkable mailto address
Как показывает опыт, что бы избежать проблем, для строк - перевода используйте верхний регистр, не используйте пробелы, и предваряйте их имена префиксами как имя расширения - чтобы избежать пресечения имён.
Итак, для мульти язычности, требуются, собственно сами файлы перевода. Далее их нужно прописать в xml – файле – манифесте. В INI - файле – переводе, то, что слева от знака = - это, что - то вроде констант, и они будут одинаковыми для всех файлов переводов, а меняться в зависимости от языка, будет то, что стоит справа. Например, голландская версия выглядела бы так:
PLG_CONTENT_EXAMPLE_MODE=Modus PLG_CONTENT_EXAMPLE_EMAILS_DISPLAYED=Selecteer hoe de e-mails worden weergegeven PLG_CONTENT_EXAMPLE_NONLINKABLE_TEXT=Niet-linkbare tekst PLG_CONTENT_EXAMPLE_LINKABLE_TEXT=Als een linkbaar mailto adres
Что бы перевод начал работать вы должны в php файле плагина загрузить языковой файл:
$lang = JFactory::getLanguage(); $lang->load('plg_content_simpleattachment', JPATH_ADMINISTRATOR); echo $JText::_('PLG_CONTENT_EXAMPLE_LINKNAME');
Ну вот, пока всё. Оригинал статьи
Аккумулятор автомобильный купить калининград
Аккумуляторы в калининграде купить аккумулятор автомобильный купить калининград.
autostart39.com