Albireo CMS 2025.06.08

Метки и рубрики в Albireo CMS

В отличие от других систем в Albireo CMS нет жесткого алгоритма для группировки страниц. Рубрики и метки — это просто уже устоявшийся в Интернете способ группировки записей, поэтому в Albireo CMS он присутствует «из коробки». Но с точно таким же успехом вы можете создать любую другую группировку записей.

Метки

Для указания метки записи используется поле tags. Метки можно указывать через запятую:

tags: Астрономия, Созвездия

Когда вы набираете в браузере ваш-сайт/tags, то выводится т.н. облако тэгов/меток, то есть все метки, которые система нашла в страницах сайта.

Если же набрать страницу метки, например ваш-сайт/tags/Астрономия, то будет стандартный вывод записей этой метки.

По умолчанию для меток используется поле и адрес с tags.

Страница вывода меток — это файл specific/tags.php. Вам не нужно его редактировать, поскольку он обеспечивает типовой функционал.

Albireo CMS поддерживает любые разрешенные символы URL для меток. Поэтому у метки можно использовать вложенность через / или даже эмодзи:

tags: Астрономия/Созвездия
tags: ❤️
tags: ❤️😼
tags: ❤️/😼

Рубрики

Рубрики задаются с помощью поля category:

category: astro, dinosauria

По адресу ваш-сайт/category будут выводиться все рубрики, а по адресу ваш-сайт/category/astro записи указанной метки.

За вывод рубрик отвечает файл specific/category.php.

В отличие от меток, рубрики можно придумать заранее. Для этого служит файл конфигурации website/config/category.php. Его нужно скопировать из system/config/category.php.

Каждая рубрика описывается в таком виде:

 // короткая ссылка рубрики относительно site/category/
 'slug' => [ 
    'title' => 'HEAD title', // обязательный
    'caption' => 'заголовок для вывода на сайте',
    'description' => 'HEAD description',
    'text-start' => 'Текст в начале рубрики',
    'text-end' => 'Текст в конце рубрики',
    'order' => 10, // порядок среди других рубрик
    'order-pages' => 'date-asc', // сортировка записей рубрики date-asc или date-desc (по умолчанию)
    'limit' => 10, // кол-во записей на одной странице
    'path' => 'cat', // иерархия materialize для задания уровня вложенности (левого отступа)
    'my-url' => 'astronomy', // свой адрес рубрики, где выводятся все её записи
],

В text-start и text-end можно использовать ///  это "\n" перенос строки

Если рубрики нет в website/config/category.php, то она будет выводиться по принципу метки — её адрес и будет названием (например astro - Astro). Но чтобы указать другие параметры вывода рубрики, нужно её указать в конфигурации.

Ключ my-url используется в тех случаях, если нужно переопределить адрес рубрики со стандартной category/astronomy (как пример) на свой адрес, например astronomy. То есть система будет использовать указанный адрес рубрики. При этом обработку этого адреса следует уже сделать самостоятельно (см. примеры в demo).

В качестве короткой ссылки рубрики slug можно использовать любую вложенность с помощью символа /, например:

category: astromomy/deepspace/galaxies

В этом случае рубрика будет доступна по ссылке https://вашсайт/category/astromomy/deepspace/galaxies. Если требуется, чтобы запись была доступна сразу во всех сегментах рубрики, то следует их задать явно:

category: astromomy/deepspace/galaxies, astromomy/deepspace, astromomy

Так же как и в метках, в рубриках можно использовать эмодзи, например:

category: astronomy, 🔭

Рубрики и метки на основе текущего каталога

При желании можно организовать метки и рубрики, основываясь на каталоге расположения файла. Например файлы рубрики «астрономия» будут располагаться в каталоге website/pages/astronomy, таким образом метка или рубрика должны автоматически стать astronomy - это каталог расположения файла страницы.

У этой страницы следует указать:

# рубрика на основе имени текущего каталога
category: [subdirs-basename]

# метка на основе имени текущего каталога
tags: [subdirs-basename]

Обратите внимание, что файл должен располагаться в подкаталоге pages, иначе [subdirs-basename] вернет точку (.).

Если вы хотите использовать полный путь к каталогу расположения, то используется [subdirs].

# рубрика на основе полного имени текущего каталога
category: [subdirs]

# метка на основе полного имени текущего каталога
tags: [subdirs]

Например если страница будет располагаться в website/pages/astronomy/deepspace/galaxies, то это сформирует рубрику/метку astronomy/deepspace/galaxies.

Если для этого файла использовать поле subdirs-basename, то рубрика/метка будет равна имени последнего (правого) каталога galaxies.