Главная страница сайта в Albireo CMS
Главная страница сайта это страница, где указано:
slug: /
Обычно это файл home.php
.
Главная страница может иметь разное назначение. Она может быть лендингом и таким образом будет выводиться её текст. В случае же типового блога, главная — это архивная страница, которая выводит другие страницы.
Другие архивные страницы: метки, рубрики, карта сайта и т.п.
Для того, чтобы выводить другие записи, следует использовать php-код.
«Типовой» вариант для блога — это вывод всех записей в обратном хронологическом порядке. Для этого можно самостоятельно написать php-код получения и вывода записей, а можно воспользоваться уже готовым файлом вывода.
Для этого в файле конфигурации используйте опции:
// файл/модуль вывода главной / каталог шаблон/modules/* 'homeOutputModule' => 'home/home1.php', // home/home2.php // количество записей на одной странице пагинации — может использоваться в модуле вывода 'homeLimitPagination1' => 7, // короткий вывод 'homeLimitPagination2' => 10, // длинный вывод
Файлы вывода размещаются в каталоге шаблона modules/home
. Есть два готовых варианта вывода и один демо-пример для сложного вывода по рубрикам. Модульный файлы просто хранят уже готовый php-код.
Ели же нужно изменить вывод главной (да и вообще любой другой архивной страницы), то реализуется это так:
// записи с type: blog $files = getPagesField('type', 'blog'); // сортировка: новые вверху $files = sortArray($files, 'date', 'date-desc'); // формирование пагинации $pag = paginationA($files, limit: 7); $files = $pag['files']; // обрезанный массив по пагинации // вывод записей echo tpl(data: $files, tpl: TPL_DIR . 'one-column-3.php'); // вывод пагинации echo tpl(data: $pag, tpl: TPL_DIR . getConfig('pagination', 'pagination1.php'));
Первым действием нужно получить все записи по указанным критериям. В данном случае выводятся все записи, у которых отмечено type: blog
. За это отвечает функция getPagesField()
.
Вторым шагов выполняется сортировка. В данном примере используется поле data
и алгоритм сортировки date-desc
(по дате в обратном порядке). Если у страницы нет поля data
, то она окажется в самом конце списка. Именно поэтому поле даты лучше указывать.
Третий шаг — это формирование пагинации (если она нужна). В ней просто указывается количество записей на одной странице.
После этого подготовленные данные передаются в tpl-шаблонизатор. В параметре функции tpl
указывается полный путь к файлу, который непосредственно выполняет вывод данных. Обычно это каталог шаблона website/templates/default/tpl
. Для работы с шаблонизатором нужны начальные знания HTML и PHP.
Примеры группировок записей
За непосредственный вывод записей отвечает tpl-файл, который указывается в одноименной функции. В Albireo CMS весть файл-подсказка, который демонстрирует примеры вариантов для главной страницы (или любой другой).
Для этого наберите адрес ваш-сайт/group-samples, где последовательно выводятся блоки группировок.
Посмотреть код вставки можно в файле specific/group-samples.php
.