Вывод новостей, статей и других записей типа "публикация"
Пример вызова компонента
{list_pubs id=$id spec="1" limit="70" assign="pubs"}
id - идентификатор страницы, публикации которой нужно вывести
alias - мнемонический код страницы, публикации которой нужно вывести
spec - если указано, то выводятся записи отмеченные, как важные
limit - количество записей. По умолчанию равно количеству записей на странице.
list_files_on - если 1, то в элементах массива публикаций подгружаются загруженные файлы
list_photos_on - если 1, то для элементов массива подгружаются все загруженные фото
assign - название переменной, куда записать результат
Обратите внимание, для сбора данных о публикациях страницы достаточно указать id или alias страницы, не обязательно указывать оба параметра.
В результате вызова компонента получим переменную $pubs с массивом, содержащую следующие поля:
spec - all (все) или 1 (отмеченные, как важные)
all - количество записей
pages - постраничная навигация (html-код генерирующий ссылки на страницы, если записей больше, чем задано в поле limit)
options - массив характеристик публикаций
list - массив публикаций
id => идентификатор публикации
title => заголовок
intro => текст анонса
active => активная запись или нет (по умолчанию выводятся только активные)
content => содержимое записи
alias => мнемонический код записи (для построения URL)
views => количество просмотров
user_id => идентификатор пользователя, добавившего запись
user_login => логин пользователя
user_name => имя пользователя
user_gender => пол пользователя
icon => иконка для публикации
f_spec => метка важной публикации (1 или 0)
date_insert => дата добавления
date_update => дата последнего изменения
categ_title => заголовок страницы
categ_id => идентификатор страницы
categ_alias => мнемонический код страницы
categ2_title => заголовок страницы уровнем выше
categ2_id => идентификатор страницы уровнем выше
categ2_alias => мнемонический код страницы уровнем выше
categ3_title => заголовок страницы высшего уровня
categ3_id => идентикатор страницы высшего уровня
categ3_alias => мнемонический код страницы высшего уровня
monthviews => количество просмотров в месяц
fotos_qty => количество фото у записи
files_qty => количество файлов у записи
comments_qty => количество комментариев у записи
pic => массив с фото публикации (представлен отдельно ниже
link => ссылка на страницу
link_idn => ссылка на страницу для кириллических доменов
date => отформатированная дата публикации
time => отформатированное время публикации
options => массив характеристик публикации (описан ниже)
list_files => список прикрепленных файлов, описан ниже
list_photos => список прикрепленных фото, описан ниже
Выводится массив из 4-х размеров главного фото публикации (если загружено несколько, выводится первое)
[1] => Array(id => идентификатор фотоext => расширение (jpg, gif и т.д.)width => ширина фотоheight => высота фото
title => название фотоurl => полная ссылка на фото)[2] => Array(данные о фото в размере 2)[3] => Array(данные о фото в размере 3)[4] => Array(данные о фото в размере 4)
Array
(
[1] => Array
(
[1] => Array
(
url => ссылка на фото
title => заголовок
width => ширина
height => высота
id_in_record => число по порядку
id => идентификатор фото
ext => расширение
ext_h1 => доп.заголовок
ext_desc => доп.описание
ext_link => доп.примечание
)
[2] => Array(
размер 2 и т.д.
)
)
[2] => фото 2 и т.д.
)
Array(мнемонический код (alias) или ID => Array(id_product => идентификатор публикации
title => название
value => значение
after => текст после значения
icon => иконка
type => тип (val, int, select, connected, checkbox, multicheckbox, date, datetime, categ, products)
group => идектификатор группы характеристик
alias => мнемонический код
opt_title => Название группы характеристик (если заголовок надо скрыть)
to_show => кому показывать (all, info - для контент-менеджеров, manager - для менеджеров, user - для пользователей, hidden - скрытое)
opt_value1 => Название характеристики 1
opt_value2 => Название характеристики 2
opt_value3 => Название характеристики 3
value2 => Значение для характеристики 2
value3 => Значение для характеристики 3
group_title => Заголовок группы характеристик
))
Array
(
[ID] => Array
(
id => идентификатор
url => ссылка на файл
direct_url => ссылка на файл
content => описание
file => путь к файлу
title => название
ext => расширение
size => размер файла
id_in_record => номер по порядку
allow_download => разрешено скачивание
direct_link => разрешена прямая ссылка
date => отформатированная дата файла
)
)
Например, нам надо построить страницу со списком записей в блоке. Рассмотрим, как это сделать по шагам:
1. Создадим файл blog.html в шаблоне сайта.
2. Назначим этот шаблон для страницы Блог.
3. Далее наполним наш лог записями.
4. Теперь самое главное - открываем шаблон blog.html и вызываем компонент со списком записей на странице Блог.
{list_pubs alias="blog" limit="20" assign="pubs"}
Далее выведем данные и настроим их внешний вид:
{foreach from=$pubs.list value="v"}
<p><img src="{$v.pic.1.url}" align="left"><a href="{$v.link}">{$v.title}</a><br>{$v.intro}</p>
{/foreach}
Всё, шаблон готов.
С помощью параметра spec можно задать такие виды списов:
connected - связанные с публикацией товары.
pub_connected - связанные с публикацией другие публикации.
wishlist - список отложенных для прочтения публикаций.
show - показать конкретные публикации, их идентификаторы задаются параметром ids через запятую.
search - поиск по фразе, саму фразу можно задать параметром search.
last - последние публикации.
visited - вывод просмотренных публикаций.
by_option - вывод публикаций с характеристикой. Характристика задается в массиве by_option, где указывать id или alias характеристики и значение в элементе value.
bitrix (3) шаблон (3) mobile (2) pagespeed (2) simpla (2) блоки (2) переменные (2) cms (1) email (1) google merchant center (1) hosting (1) seo (1) wordpress (1) валюты (1) константы (1) мобильная версия (1) платежи (1) посетители (1) рассылка (1) сравнение (1) теги (1) фильтр (1) шаблоны (1) яндекс маркет (1)