Дополнительный параметр к материалу в Joomla 1.5

  • Вторник, 10 марта 2009

Иногда, для автоматизации, необходимо к материалу добавить еще параметр, в зависимости от которого будет выводиться то что Вам требуется. В этой статье я расскажу как это можно реализовать.

Итак при создании нового материала в административной панели справа есть колонка "Параметры - Статьи", "Параметры - Расширенные" и "Мета-данные" . В зависимости от этих параметров можно отдельно настроить вывод для каждой статьи. За вывод этих параметров отвечает файл \administrator\components\com_content\models\article.xml. Рассмотрим его более подробнее.

В этой строке добавляется путь к элементам, которые использует параметр. Более наглядней это будет продемонстрировано при разборе следующей строки.

Рассмотрим эту строчку подробнее:

  • name - имя параметра.
  • type - вот в этой строке как раз и подключается елемент (type="author") В данном случае файл administrator\components\com_content\elements\author.php, который возвращает список всех пользователей. И при создании или редактировании материала Вы можете поставить автором статьи любого зарегестрированного пользователя. Подробнее о стандартных типах (type), используемых в Joomla, Вы можете почитать Joomla standard parameter_types.
  • default - значение параметра по умолчанию.
  • label - название параметра, собственно то что Вы будете видеть в административной панели Joomla.
  • description - описание, текст который будет выводиться при наведении на параметр.

Параметры можно так же группировать, подробнее об этом напишу чуть позже.

Итак создадим дополнительный параметр и поместим его в группу advanced, перед заголовком:


	
		
		
	
	
		
		
		
	
...

В данном случае я использовал type="list", Вы же можете выбрать тип который Вам подходит. Итак, пол дела сделано, теперь осталось добавить в шаблон вывода обработку этого параметра.

Открываем файл шаблона вывода материала components\com_content\views\article\tmpl\default.php и добавляем в него (я выбрал начало):

user->authorize('com_content', 'edit', 'content', 'all') || $this->user->authorize('com_content', 'edit', 'content', 'own'));
?>
params->get('you_param')) : ?> 
		 
 

Выводить в принципе можно все что угодно - текст, картинку, JavaScript и т.д. и т.п.

Если Вам нужно вывести значение данного параметра, допустим Вы использовали type="text", то в шаблон вывода добавляем

params->get('you_param') !== '') : ?> 
		params->get('you_param')); ?> 
 

Вот, в принципе, пока и все. Позже напишу про группы и как добавлять параметры в отдельное поле таблицы.

Вадим Куницын

Вадим Куницын

Руководитель JoomLine. Занимаюсь планированием и стратегией разработки программных продуктов JoomLine. Активный участник сообщества Joomla! Россия с 2007 года.

Россия, Калининград. https://joomline.ru sale@joomline.ru

Статьи автора

Joomla!® CMS — пожалуй, лучшая система управления контентом с открытым исходным кодом

Логотип Joomla

Joomla! — это больше, чем просто программное обеспечение, это люди, включающие разработчиков, дизайнеров, системных администраторов, переводчиков, копирайтеров, и, что самое главное — простых пользователей.

Мы рады пригласить вас в ряды нашего сообщества!

Свернуть

Коротко о главном в Joomla

Новости портала

Новое в блогах

Видео

Форум о Joomla