Api для шаблона fieldattach:
Api for templates
Можно создать персональный шаблон со значениями дополнительных полей. Очень легко и гибко.
Сначала следует добавить api библиотеку:
// require helper file JLoader::register('fieldattach', 'components/com_fieldsattach/helpers/fieldattach.php');
ФУНКЦИИ (ТОЛЬКО ОДНА ФУНКЦИЯ ДЛЯ ВСЕХ ДОПОЛНИТЕЛЬНЫХ ТИПОВ)
fieldattach::getFieldValue($articleid, $fieldid, $category = false)
Parameters | $id(Идентификатор статьи) $fieldsids(Идентификатор поля) $category, true or false (По умолчанию false) |
Return | HTML поля |
Отображение всех полей к статье
fieldattach::getAllFieldValue($articleid, $category = false)
Parameters | $id(Идентификатор статьи) $category, true or false (По умолчанию false) (Пока не работает) |
fieldattach::getName($id, $fieldsids, $category=false)
Parameters | $id(Идентификатор статьи) $fieldsids(Идентификатор поля) $category (boolean) |
Return | Значение имени поля |
fieldattach::getValue($id, $fieldsids, $category=false)
Parameters | $id(Идентификатор статьи) $fieldsids(Идентификатор поля) $category (boolean) |
Return | Значение поля, без HTML-тэгов. ТОЛЬКО для ввода, текстовой области и избранных дополнительных типов |
Пример шаблона статьи
<?php /** * @package Fieldsattach example */ // no direct access defined('_JEXEC') or die; JHtml::addIncludePath(JPATH_COMPONENT . '/helpers'); // require helper file JLoader::register('fieldattach', 'components/com_fieldsattach/helpers/fieldattach.php'); // Create shortcuts to some parameters. $params = $this->item->params; $images = json_decode($this->item->images); $urls = json_decode($this->item->urls); $canEdit = $this->item->params->get('access-edit'); $user = JFactory::getUser(); ?> <div class="item-page<?php echo $this->pageclass_sfx?>"> <?php if ($this->params->get('show_page_heading', 1)) : ?> <h1> <?php echo $this->escape($this->params->get('page_heading')); ?> </h1> <?php endif; ?> <?php if (!empty($this->item->pagination) AND $this->item->pagination && !$this->item->paginationposition && $this->item->paginationrelative) { echo $this->item->pagination; } ?> <?php if ($params->get('show_title')) : ?> <h2> <?php if ($params->get('link_titles') && !empty($this->item->readmore_link)) : ?> <a href="/<?php echo $this->item->readmore_link; ?>"> <?php echo $this->escape($this->item->title); ?></a> <?php else : ?> <?php echo $this->escape($this->item->title); ?> <?php endif; ?> </h2> <?php endif; ?> <?php if (!$params->get('show_intro')) : echo $this->item->event->afterDisplayTitle; endif; ?> <?php echo $this->item->text; ?> <!-- FIELDS ATTACH VALUE --> <?php fieldattach::getFieldValue($this->item->id, 1, false, false);?>