[На главную] [К оглавлению раздела]
select
select - произвольная выборка
Возможные атрибуты:
- sql - SQL-выборка для БД MySQL
- xpath - XPath-выборка для БД на xml
- checkversion - для БД MySQL - псевдоним таблицы в которой хранятся страницы (CmsPage), и к которой необходимо добавить условие проверяющее версию записи.
Для администраторов и модераторов выбирается последняя версия записи, для остальных - опубликованная версия записи
- template - шаблон вывода в формате идентификатор_шаблона@файл_шаблонов,
где идентификатор_шаблона - это id шаблона в файле шаблонов (по умолчанию index),
a файл_шаблонов - по умолчанию используется текущий файл шаблонов, поиск файла фаблонов производится в папке шаблонов указанной в конфигурации.
При использовании текущего файла шаблонов, символ @ опускается
- orderby - сортировка; используется SQL-синтаксис даже для базы на xml (по умолчанию сортировка по двум полям: приоритет и дата создания; `n` DESC, `create_time` DESC)
- length - количество записей для разбивки по страницам
- page - вывод конкретной страницы при постраничной разбивке.
- can_insert="yes" - включает возможность вставки новых записей в frontend-редактировании
- save_params - дополнительные параметры сохранения при вставке через frontend (указываются через пробел):
- set_parent_id=идентификатор - устанавливает родителя
- set_external_class=имя_класса - устанавливает внешний класс
- set_childrens_template_src=имя_шаблона - устанавливает шаблон
- add_dassoc=идентификатор - добавляет привязку к записи с указанным идентификатором
- add_rassoc=идентификатор - привязывает запись с указанным идентификатором к текущей записи
Во всех атрибутах применяются специальные замены
<?xml version="1.0" encoding="utf-8"?>
<t:templates xmlns:t="/templates/ns" xmlns="http://www.w3.org/1999/xhtml">
<t:template id="index">
<h1><t:var name="title" /></h1>
<div><t:childrens template="category_list" /></div>
<t:if expr="{PARENT_TEMPLATE_SRC_DEEP}==0">
<t:select xpath="//page[@id='{VARS['id']}']/page/page"
sql="SELECT * FROM `{TABLE_PAGE}` AS A WHERE (`parent_id` IN (SELECT DISTINCT `parent_id` FROM `{TABLE_PAGE}` WHERE `parent_id`='{VARS['id']}'))"
checkversion="A" template="articles_list" length="10" />
</t:if>
<t:if expr="{PARENT_TEMPLATE_SRC_DEEP}==1">
<t:childrens template="articles_list" length="10" />
</t:if>
<t:if expr="{PARENT_TEMPLATE_SRC_DEEP}==2">
<t:block template="article" />
</t:if>
</t:template>
<t:template id="category_list">
<t:a><t:var name="title" /></t:a> &nbsp;
</t:template>
<t:template id="articles_list">
<div>
<t:a><t:var name="title" /></t:a><br />
<t:var name="description" />
</div>
<t:last><t:rule /></t:last>
</t:template>
<t:template id="articles">
<t:var name="content" />
</t:template>
</t:templates>
[На главную] [К оглавлению раздела] [Вверх]