Инфоблоки
Инфоблоки в SyDES - это любой php или html код, который можно вывести на фронте с помощью специальной метки, вида {iblоck:iblock_name}, записанной в тексте страницы, макете или шаблоне.
Хранятся они по адресу system/iblock/iblock_name/iblock.php в виде php файла.
Шаблоны
В самом простом варианте достаточно лишь этого одного файла. Но система позволяет наращивать функционал инфоблока в гораздо большем масштабе. Например, если ваш инфоблок собирает какие-нибудь данные, а затем выводит их красиво оформленными, то может потребоваться несколько разных шаблонов для разных страниц. В таком случае создайте в папке с инфоблоком файл default.php, который будет содержать дефолтный шаблон. Он автоматически будет подгружен после самого инфоблока. Далее вы можете насоздавать еще файлов с уникальными названиями и разместить там другие шаблоны. Для применения этих шаблонов используйте аргумент template в метке инфоблока {iblоck:iblock_name?template=simple}.
Настройки
Для того, что бы через метку инфоблока можно было передавать аргументы в виде URL-кодированной строки, достаточно в начале кода прописать строки вида
$defaults = array(
'show' => 'some',
'limit' => 20,
'param' => true
);
$args = array_merge($defaults, $args);
Это позволит иметь дефолтные настройки и менять их при необходимости.
Например: {iblоck:iblock_name?show=mydata&limit=5¶m=1&title=Мой+заголовок}
Инфоблок как модификатор
Одной из особенностей последней версии системы инфоблоков является возможность перезаписывать выходные данные, подобно плагинам.
Например создав инфоблок modifier_products и подключив его в начале макета для товаров можно отредактировать или отформатировать мета данные товаров перед выводом.
$this->response->data['image'] = isset($page['image']) ?
'<img src="/cache/img/250_250_c' . $page['image'] . '">' :
'<img src="/upload/images/no-image.png">';
$this->response->data['meta_title'] = 'Купить ' . $page['meta_title'] . ' дешево';
$this->response->script[] = '//somecdn.com/script.min.js';
$this->response->style[] = '//somecdn.com/style.css';
Данный код создаст превьюшку товара размером 250 на 250, осеошит тайтл страницы и подгрузит указанные стиль со скриптом.
$page содержит данные из $this->response->data на момент инициализации инфоблока. Используйте ее в коде.
Вставка в два клика
Если вы хотите добавить своему инфоблоку возможность вставляться в визуальном редакторе в пару кликов, то в его папке создайте файл manifest.ini с содержимым, вида
[en] title=Pages description="List of pages, news or products" [ru] title=Страницы description="Список страниц, новостей или товаров" [data] template=default author=ArtyGrand
То есть с названием и кратким описанием инфоблока на нужных языках. После этого кнопка появится в панели редактора, на предпоследнем месте.