Страницы в Blox CMS открываются по URL вида ?page=2
.
Если данные какого-либо блока необходимо отфильтровать, то URL будет выглядеть, например, так:
?page=2&block=3&sort[1]=desc
.
Что произойдет, если опустить параметр page, то есть, сделать запрос с помощью такого URL:
?block=3&sort[1]=desc
.
А произойдет то, что в данном примере будет выведен код блока 3 с отсортированными данными.
Будет выведен только код блока (без тега docType, без раздела head, и т.д.). Поэтому этот код в окне браузера будет выглядеть, скорее всего, не очень презентабельно.
Где это может пригодиться? Вывод блоков используется прежде всего при создании веб-приложений на основе веб-технологий Ajax и RSS.
В предыдущем примере кода, мы выводили блок с одновременной сортировкой его данных. При этом, выводимый блок являлся одновременно и блоком, на который накладывались условия.
Однако, эти блоки могут не совпадать, например, выводится блок, и одновременно во вложенном блоке производится специальная выборка записей.
Параметр block используется, прежде всего, для специальной выборки записей.
Поэтому в таких случаях номер корневого блока (являющийся источником контента) нужно указывать с помощью другого параметра – src, например так: ?src=2&block=3&sort[1]=asc
.
Если спец.выборка не требуется, то для вывода блока можно использовать как параметр src, так и параметр block, например: ?src=2
или ?block=2
.
Мы рекомендуем использовать первый явный способ, то есть, через параметр src, так как в этом случае легко управлять выводом нужной ветки шаблона с помощью конструкции if (см. пример).