MODx/Встроенные сниппеты/NewsListing

Материал из Викиучебника — открытых книг для открытого мира

Информация[править]

Последняя версия: 4.4

Авторы: Mark Kaplan, Susan Ottwell, Raymond Irving, Greg Matthews and Ryan Thrash

Ответственный: Mark Kaplan

Назначение: Отображает документы как записи в одном документе с поддержкой разбиения результата на страницы.

Обновления и Поддержка: здесь

Параметры[править]

  • &startID - идентификатор папки содержимое которой надо выводить. По умолчанию идентификатор документа внутри которого происходит вызов сниппета.
  • &paginate - значение равное 1 указывает на необходимость разбиения на страницы. По умолчанию 0.
  • &prv - имя чанка, код которого будет выводиться как содержимое ссылки на предыдущие страницы. По умолчанию "< Previous".
  • &nxt - имя чанка, код которого будет выводиться как содержимое ссылки на следующие страницы. По умолчанию "Next >".
  • &alwaysshow - значение равное 1 указывает на необходимость отображать ссылки на предыдушие и следующие страницы вне зависимости от того есть ли они. Если страниц не будет, то гиперссылки не будут подставлены, но текст ссылок будет выведен, а символ разделителя ссылок, наоборот, не будет выведен. По умолчанию равен 0.
  • &prevnextsplitter - символ, который будет использоваться как разделитель ссылок на предыдущие и следующие страницы, при условии что параметер &alwaysshow равен 0. По умолчанию "|".
  • &summarize - number of posts to list partially/fully [3]
  • &total - max number of posts to retrieve [all posts]
  • &increment - # of items to advance by each time the previous or next links are clicked [10]
  • &trunc - truncate to summary posts? if set to false, shows entire post [true]
  • &truncSplit - use the special "splitter" format to truncate for summary posts [true]
  • &truncAt - the split-point splitter itself [ ]
  • &truncText - текст ссылки "Подробнее", "Дальше" или "Читать дальше".
  • &truncLen - number of characters to show in the doc summary [300]
  • &truncOffset - negative offset to use to fall back when splitting mid-open tag [30]
  • &comments - whether or not the posts have comments [false]
  • &commText - Текст ссылки "Комментарии". По умолчанию: ["Read Comments"]
  • &tpl - name of the chunk to use for the summary view template
  • &dateformat - формат вывода даты. Соответствует формату используемому в PHP (смотрите http://php.net/strftime ). По умолчанию: [%d-%b-%y %H:%M]
  • &datetype - the date type to display (values can be createdon, pub_date, editedon) [&sortby | "createdon"]
  • &pubOnly - выводить только опубликовынные документы. По умолчанию: [true]
  • &emptytext - текст сообщения, которое будет выведено, если не будет найдено ни одного документа.
  • &showarch - show archive listing? [true]
  • &archplaceholder -output archive (older posts section) as a placeholder called archive [0]
  • &archivetext - text to use for the Post Archives listing ["Older Items"]
  • &commentschunk - если вы используете комментарии, то в этом параметре можно указать имя чанка который будет использоваться для их форматирования.
  • &sortby - поле сортировки. Т.е. тот параметра, по которому снипет будет сортировать свой вывод. Например, дата создания, публикации или последнего редактирования (reccomended values include createdon, pub_date, editedon; reverts to createdon if value is invalid). По умолчанию: ["createdon"]
  • &sortdir - способ (направление) сортировки. По умолчанию: ["desc"] (т.е. по убыванию).
  • &debug - включить режим отладки. Вместе с заданным выоводом, снипет будет выводить свои служебные сообщения. Это режим можно использовать для диагностики неполадок. По умолчанию: [0]

Standard Call
NewsListing? &tpl=`NewsListingTemplate` &startID=`2` &summarize=`3` &commentschunk=`FormBlogComments`

Pagination Call
[!NewsListing? &tpl=`NewsListingTemplate` &startID=`2` &summarize=`2` &commentschunk=`FormBlogComments` &paginate=1]]

Показано [+start+] - [+stop+] из [+total+] Новостей

[+previous+] [+prevnextsplitter+] [+next+]


Advanced Pagination Call
[!NewsListing? &tpl=`NewsListingTemplate` &startID=`2` &summarize=`3` &commentschunk=`FormBlogComments` &paginate=`1` &alwaysshow=`1`]]

Показано [+start+] - [+stop+] из [+total+] Новостей
< div id="nl_pages"> [+previous+] [+pages+] [+next+] < /div> CSS

<style type="text/css">

  1. nl_archivelist ul{list-style-type: none; margin-left: 15px; padding-left: 0px;}
  2. nl_archivelist ul ul{

list-style-type: square; margin-left: 35px;} .nl_month {font-weight: bold;} #nl_pages {margin-top: 10px;}

  1. nl_pages #nl_currentpage {border: 1px solid blue;padding: 2px; margin: 2px; background-color: rgb(90, 132, 158); color: white;}
  2. nl_pages .nl_off {border: 1px solid #CCCCCC; padding: 2px; margin: 2px}
  3. nl_pages a {border: 1px solid rgb(203, 227, 241); padding: 2px; margin: 2px; text-decoration: none; color: black;}
  4. nl_pages a:hover {border: 1px solid #000066; background-color: white; }
  5. nl_archivelist ul{list-style-type: none; margin-left: 15px; padding-left: 0px;}
  6. nl_archivelist ul ul{list-style-type: square;margin-left: 35px;}

.nl_month {font-weight: bold;} </style>


Customization

Создаем свой шаблон: Для создания своего шаблона необходимо знать как работает html.

Создаем Чанк со следующим кодом и называем его NewsListingTemplate.
Default display template (tpl):

<a href="[~[+id+]~]">[+title+]</a>

[+summary+]

[+link+]

by [+author+] on [+date+]

Available placeholders

   * Any document object (list) in the format of [+documentobject+]
   * Any template variable in the format of [+tvnameoftv+]
   * [+next+] - вперед
   * [+previous+] - назад
   * [+prevnextsplitter+] - splitter if always show is 0
   * [+pages+] - список страниц
   * [+totalpages+] - всего страниц
   * [+start+] - номер первой показаной новости
   * [+stop+] - номер последней показаной новости
   * [+total+] - всего новостей

Добавте &tpl=`NewsListingTemplate` в ваш код вызова снипета и NewsListing будет в вашем шаблоне.