Пример использования
$data = $this->macros('faq', 'question', array(null, '/project/category/question/'));
Данные о вопросе, которые содержатся в $data, можно вывести с помощью конструкции var_dump($data);, после чего оформить их вывод необходимым образом.
Не используется. Все необходимые данные находятся в ответе UPage (см. «Страницы: протокол UPage»). Текст вопроса находится в элементе value
внутри элемента property
с name="question"
, а ответ на вопрос в элементе value
внутри элемента property
c name="content"
(поле контент). И к первому и второму свойству можно обратиться, добавив к запросу UPage ".question"
и ".content"
соответственно.
Для вопроса с id=29 отобразить эти поля можно, например, так:
Вопрос: <br/>
<xsl:value-of select="document('upage://29.question')/udata/property/value" />
<br/><br/>
Ответ на вопрос: <br/>
<xsl:value-of select="document('upage://29.content')/udata/property/value" disable-output-escaping="yes"/>
Вывод вопроса осуществляется по шаблону, указанному в параметре template. Вы можете не указывать этот параметр, тогда для вывода будет использован шаблон по умолчанию — default.tpl
.
Примеры использования
Создайте файл sample.tpl
в директории /tpls/faq/
и напишите в нем следующий код:
<?php
$FORMS['question'] = <<<END
<div style="background-color: #EEEEEE; padding: 5px;">
%question%
</div>
<div style="background-color: white; padding: 5px;">
%answer%
</div>
END;
?>
Создайте вопрос myquestion в категории вопросов common, проекта myproject.
Создайте страницу в модуле «Структура». В редакторе содержимого страницы введите макрос %faq question('sample', '/myproject/common/myquestion')%. Сохраните страницу.
Название
%faq question()% — Выводит расширенную информацию о вопросе.
Параметры: faq question([template = 'default', element_path = 0])
- template
-
Имя шаблона, по которому выводится вопрос.
- element_path
-
id или путь к вопросу.