Параметры настройки шаблонов Joomla 2.5 |
После регистрации в административной части веб-сайта Joomla, выбора сначала команды Extensions1 => Template Manager (Расширения => Диспетчер шаблонов), а затем исходного шаблона Beez2 - Default для редактирования стиля его оформления в правой части экрана появляются дополнительные параметры настройки, приведенные на скриншоте ниже.
![]() Параметры настройки шаблона beez_20
Это лишь первый из многих примеров параметров, доступных для настройки в Joomla. Посмотрим, откуда они берутся, как используются и сохраняются в базе данных.
Параметры определяются в XML-файлах. В данном случае имеется в виду файл templates/beez_20/templateDetails.xml, в котором содержится и другая информация о шаблоне. Часть этого файла, где находится информация о параметрах, располагается в элементе config, как показано в листинге ниже.
<config> <fields name="params"> <fieldset name="advanced"> <field name="wrapperSmall" class="validate-numeric" type="text" default="53" label="TPL_BEEZ2_FIELD_WRAPPERSMALL_LABEL" description="TPL_BEEZ2_FIELD_WRAPPERSMALL_DESC" filter="integer" /> <field name="wrapperLarge" class="validate-numeric" type="text" default="72" label="TPL_BEEZ2_FIELD_WRAPPERLARGE_LABEL" description="TPL_BEEZ2_FIELD_WRAPPERLARGE_DESC" filter="integer" /> <field name="logo" type="media" label="TPL_BEEZ2_FIELD_LOGO_LABEL" description="TPL_BEEZ2_FIELD_LOGO_DESC" /> <field name="sitetitle" type="text" default="" label="TPL_BEEZ2_FIELD_SITETITLE_LABEL" description="TPL_BEEZ2_FIELD_SITETITLE_DESC" filter="string" /> <field name="sitedescription" type="text" default="" label="TPL_BEEZ2_FIELD_DESCRIPTION_LABEL" description="TPL_BEEZ2_FIELD_DESCRIPTION_DESC" filter="string" /> <field name="navposition" type="list" default="center" label="TPL_BEEZ2_FIELD_NAVPOSITION_LABEL" description="TPL_BEEZ2_FIELD_NAVPOSITION_DESC" filter="word" > <option value="center">TPL_BEEZ2_OPTION_AFTER_CONTENT</option> <option value="left">TPL_BEEZ2_OPTION_BEFORE_CONTENT</option> </field> <field name="templatecolor" type="list" default="nature" label="TPL_BEEZ2_FIELD_TEMPLATECOLOR_LABEL" description="TPL_BEEZ2_FIELD_TEMPLATECOLOR_DESC" filter="word" > <option value="nature">TPL_BEEZ2_OPTION_NATURE</option> <option value="personal">TPL_BEEZ2_OPTION_PERSONAL</option> </field> </fieldset> </fields> </config> Если сравнить содержимое XML-файла с экраном Advanced Options (Дополнительные параметры), приведенным на скриншоте выше, то можно заметить следующее:
Атрибуты элементов разметки полей, определяющих параметры настройки шаблона:
Элементы разметки fields и field были внедрены в версии Joomla 1.6 и заменили собой элементы разметки params и param, применявшиеся в версии 1.5.
Следует также заметить, что параметр navposition относится к типу list. Это означает, что пользователь может сделать выбор из раскрывающегося списка параметров шаблона. Каждый параметр в этом списке определен как отдельный элемент разметки option, а у каждого элемента разметки option имеется свой атрибут value, определяющий значение, передаваемое форме при выборе данного параметра из списка. Текст наименования элемента разметки option должен появляться в списке и, как правило, переводится, поэтому он представлен в виде дескриптора, определяемого для данного шаблона в файле языковой поддержки.
А теперь посмотрим, каким образом параметры сохраняются в базе данных веб-сайта Joomla. Если проанализировать содержимое таблицы
#template_styles базы данных, то в ней можно обнаружить строку со значением Beez2 - Default в столбце title. А если перейти к столбцу params в этой же строке, то в нем можно обнаружить следующее значение:{"wrapperSmall":53,"wrapperLarge":72,"logo":"images\/joomla_black.gif", "sitetitle":"Joomla!","sitedescription":"Open Source Content Management","navposition":"left", "templatecolor":"personal"} Приведенный выше текст представлен в формате JSON (JavaScript Object Notation — представление объектов JavaScript). Начиная с версии 1.6 формат JSON используется для сохранения параметров настройки Joomla в базе данных. В рассматриваемом здесь примере сохранения параметров шаблона в формате JSON первым указывается имя параметра в кавычках, а после двоеточия — значение этого параметра. Каждый предыдущий параметр отделяется от последующего запятой, а вся запись параметров заключается в фигурные скобки.
С исчерпывающим описанием формата JSON можно ознакомиться по адресу
Следует также заметить, что все параметры хранятся в единственном столбце parameters таблицы базы данных. Это означает, что новые параметры можно вводить, не добавляя новые столбцы в таблицу базы данных. Например, стиль оформления шаблона может содержать любое количество параметров с любыми именами, выбираемыми разработчиком шаблона. И такой подход к сохранению многих параметров в одном столбце таблицы базы данных принят повсеместно в Joomla, что в значительной степени упрощает процесс создания параметров. А недостаток такого подхода заключается в том, что пользоваться параметрами в запросах базы данных не так-то просто.
Понравился материал? Пригодилась информация? Плюсани в социалки!
|
Похожие новости | |