Секции главной: как писать свои
Как писать свои секции для Kuznya CMS: структура файла, подключение, работа с section_items.
Что такое секция
Секция — блок главной страницы. Одна секция = один PHP-файл в /themes/{slug}/sections/. Движок сам собирает главную из включённых секций в нужном порядке.
Как движок находит секции
- Сначала ищет в теме:
/themes/{slug}/sections/{type}.php - Если не находит — берёт из корня:
/sections/{type}.php - Если ни там, ни там — пропускает
Это позволяет клиенту писать только те секции, что нужны, а остальные брать из базового набора.
Пример: своя секция hero
<?php
// /themes/my-theme/sections/hero.php
$title = $settings['hero_title'] ?? 'Заголовок';
?>
<section class="hero">
<h1><?= htmlspecialchars($title) ?></h1>
</section>
Управление секциями
В админке Контент → Секции главной можно:
- Менять порядок (перетаскиванием)
- Включать / выключать
- Видеть предупреждение, если файла секции нет в теме
Чтение данных из БД
Для карточек внутри секции (Features, Pricing, Screenshots...) используйте функцию getSectionItemsOr($type, $fallback). Она возвращает массив записей из таблицы section_items.