Примеры вызова сниппета Ditto.
[!Ditto? &tpl=`news_tpl` &parents=`2`!] // некэшируемый вызов // кэшируемый вызов
где:
&tpl=`news_tpl` - шаблон вывода документов
&parents=`2` - ID папки в которой находятся обрабатываемые документы
[!Ditto? &tpl=`news_tpl` &parents=`2` &orderBy=`pagetitle ASC`!]
где:
&orderBy=`ASC pagetitle` - сортировать по возрастанию по полю заголовка документов
[!Ditto? &tpl=`news_tpl` &parents=`2` &id=`news` &paginate=`1` &display=`10`!] <div class="pagination"> Страница из </div>
где:
&id=`news` - идентификатор Ditto. Должен быть уникальным для каждого из вызовов Ditto с постраничным разбиением. Необходим для корректной работы постраничных плэйсхолдеров, если на странице используются и другие вызовы сниппета Ditto
&paginate=`1` - включаем постраничное разбиение
&display=`10` - количество отображаемых документов на каждой странице
При использовании идентификатора при постраничном разбиении, идентификатор должен быть добавлен в качестве суффикса к плэйсхолдерам пагинации, т.е. в данном случае плэйсхолдер должен превратиться в .
[!Ditto? &tpl=`news_tpl` &parents=`2` &dateSource=`pub_date` &dateFormat=`%d.%m.%Y`!]
где:
&dateSource=`pub_date` - источник, определяющий значение плейсхолдера , использующегося в шаблоне news_tpl
&dateFormat=`%d.%m.%Y` - определяет формат времени, которое выводится с помощью плейсхолдера согласно правилам функции PHP - strftime.
[!Ditto? &tpl=`news_tpl` &parents=`2` &filter=`id,10,2|id,20,2`!]
где:
&filter=`id,10,2|id,20,2` - исключает документы с id 10 и 20
$modx->runSnippet(
'Ditto',
array(
'startID' => 34,33,37,35,36,
'summarize' => 9,
'tpl' => 'portfolioTpl',
'dateFormat' => '%d.%m.%Y',
'dateSource' => 'pub_date',
'display' => 9,
'paginate' => 1,
'paginateAlwaysShowLinks' => 1,
'filter' => 'year,'.$_GET['year'].',1'
)
);