Страницы в 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 (см. пример).