Использование лишено смысла. Используйте непосредственно протокол USel (см. «Выборки из БД: протокол USel»).
Используемые шаблоны
Для отображения результатов макрос оперирует шаблонами, находящимися в каталоге /tpls/data/usel
.
Файлы с шаблонами Usel должны находится в папке ~/usels/.
Используемые блоки шаблона
objects_block
Выводит блок, который содержит список объектов выборки, удовлетворяющих заданным условиям.
- %total%
-
Общее количество объектов выборки, удовлетворяющих условиям.
- %per_page%
-
Количество объектов на странице.
- %items%
-
Выводит список объектов, сформированный блоком objects_block_line.
objects_block_line
Выводит строку из списка объектов выборки.
- %name%
-
Имя объекта.
- %id%
-
Идентификатор объекта.
- %separator%
-
Выводит разделитель, заданный в блоке separator или, в случае последнего элемента, — в блоке separator_last.
objects_block_empty
Выводит заданный в этом блоке текст в случае отсутствия объектов, удовлетворяющих условиям выборки.
elements_block
Выводит блок, который содержит список страниц, удовлетворяющих условиям выборки.
- %total%
-
Общее количество страниц, удовлетворяющих условиям выборки.
- %per_page%
-
Количество выводимых страниц в списке на странице.
- %items%
-
Выводит список страниц, сформированный блоком elements_block_line.
elements_block_line
Выводит строку из списка страниц, удовлетворяющих условиям выборки.
- %name%
-
Имя объекта.
- %id%
-
Идентификатор объекта.
- %link%
-
Ссылка на страницу.
- %separator%
-
Выводит разделитель, заданный в блоке separator или, в случае последнего элемента, — в блоке separator_last.
elements_block_empty
Выводит заданный в этом блоке текст в случае отсутствия страниц, удовлетворяющих условиям выборки.
Примеры использования
Создайте XML-файл в папке http://your-domain.ru/usels. Например, он будет называться getAllCatalogPages.xml. Это будет наш шаблон usel, используемый для задания условий выборки. Введите в этом файле следующий текст:
<?xml version="1.0" encoding="UTF-8"?>
<selection>
<target expected-result="pages">
<type module="catalog" method="object" />
</target>
</selection>
Создайте новую страницу и вставьте туда макрос с параметрами %data doSelection('default','getAllCatalogPages')%. При просмотре созданной страницы вы должны увидеть все объекты каталога с ссылками на их страницы, оформленные в виде списка. Оформление списка задается шаблоном default.tpl
и выглядит следующим образом:
<?php
$FORMS = Array();
$FORMS['objects_block'] = <<<END
<p>Objects list (%total%/%per_page%):</p>
<ul>
%items%
</ul>
END;
$FORMS['objects_block_line'] = <<<END
<li>
%name%
%separator%
</li>
END;
$FORMS['objects_block_empty'] = <<<END
<p>Objects not found</p>
END;
$FORMS['elements_block'] = <<<END
<p>Elements list (%total%/%per_page%)</p>
<ul>
%items%
</ul>
END;
$FORMS['elements_block_line'] = <<<END
<li>
<a href="%link%">%name%</a>
%separator%
</li>
END;
$FORMS['elements_block_empty'] = <<<END
<p>Elements not found</p>
END;
$FORMS['separator'] = <<<END
|
END;
$FORMS['separator_last'] = <<<END
!
END;
?>
Название
%data doSelection()% — Отображает результаты выборки из базы данных UMI.CMS по заданному шаблону USel.
Параметры: %data doSelection(template = 'default', uselName [, param1, param2, ... ])%
- template
-
Имя шаблона, по которому надо вывести результаты выборки.
- uselName
-
Имя шаблона Usel, на основании которого производится выборка.
- param1, param2, ...
-
Параметры, значение которых будет подставлено в заданные места в шаблоне Usel (см. «Выборки из БД: протокол USel»).
Описание
Этот макрос позволяет задействовать возможности протокола USel (см. «Выборки из БД: протокол USel») на сайтах, работающих на tpl-шаблонизаторе. Для задания условий выборки используются специальные XML-файлы — так называемые шаблоны Usel. Для конечного отображения результатов выборки можно задать пользовательский шаблон (параметр template), или воспользоваться шаблоном по умолчанию — default.tpl
. В шаблонах отображения используются две группы блоков — отдельно для объектов системы (objects_block), отдельно для страниц (elements_block).