Установка и настройка Kirby CMS в среде ServBay
Kirby – гибкая и мощная файловая система управления контентом (CMS), отлично подходящая для создания сайтов самого разного типа. В отличие от традиционных CMS на базе базы данных, Kirby хранит контент в файловой системе, благодаря чему она очень легкая, удобна в управлении версиями и проста в развертывании.
В этом руководстве вы узнаете, как установить и настроить Kirby 4.2 Starterkit с помощью Composer в ServBay — специализированной локальной среде для web-разработки. ServBay позволяет использовать предустановленные PHP, веб-сервер (например, Caddy или Nginx) и Composer, что делает её отличным выбором для разработки проектов на Kirby локально.
Требования
Перед началом убедитесь, что вы:
- Установили и запустили ServBay на macOS.
- Активировали нужную версию PHP в ServBay (в примере используется PHP 8.2).
- Composer уже интегрирован в ServBay — устанавливать отдельно его не нужно.
Шаги по установке Kirby
Далее приведены пошаговые инструкции по установке и настройке Kirby в среде ServBay:
Шаг 1: Создание директории проекта
Сначала откройте терминал. Перейдите в стандартную корневую папку сайтов ServBay /Applications/ServBay/www
и создайте папку для будущего проекта. В примере имя проекта — servbay-kirby-app
.
cd /Applications/ServBay/www
mkdir servbay-kirby-app
cd servbay-kirby-app
2
3
Шаг 2: Создание проекта Kirby через Composer
Composer интегрирован в ServBay, и его можно использовать прямо в терминале. Находясь в папке проекта servbay-kirby-app
, выполните команду для скачивания и установки Starterkit Kirby:
composer create-project getkirby/starterkit .
Эта команда загрузит ядро Kirby, все зависимости и базовый Starterkit с примерами контента и шаблонов в текущую папку (.
).
Шаг 3: Настройка веб-сервера (добавление сайта в ServBay)
Чтобы веб-сервер ServBay (например, Caddy или Nginx) мог обслуживать ваш проект на Kirby, добавьте новую конфигурацию сайта в приложении ServBay.
- Откройте ServBay: Запустите приложение ServBay.
- Перейдите к управлению сайтами: В левой панели выберите раздел «Сайты».
- Добавьте новый сайт: Нажмите кнопку «+» или другую похожую опцию добавления сайта.
- Заполните информацию о сайте:
- Имя: Придумайте удобное для распознавания название, например
My Kirby Site
. - Домен: Укажите локальный домен для разработки. Рекомендуются окончания
.local
или.servbay.demo
, напримерservbay-kirby.local
. ServBay автоматически настроит локальный DNS. - Тип сайта: Выберите
PHP
, так как Kirby — PHP-приложение. - Версия PHP: Выберите нужную версию, например,
8.2
. Убедитесь, что версия соответствует минимальным требованиям Kirby. - Корневая папка сайта: Укажите папку, где расположен файл
index.php
вашего проекта. Для Starterkit Kirby это, как правило, корневая папка проекта. Введите или выберите путь:/Applications/ServBay/www/servbay-kirby-app
.
- Имя: Придумайте удобное для распознавания название, например
- Сохраните настройки: После проверки информации нажмите «Сохранить». ServBay автоматически применит новые настройки, при необходимости перезапустив веб-сервер.
Шаг 4: Первичная настройка Kirby
Основная настройка Kirby осуществляется через файл site/config/config.php
. В Starterkit уже есть базовая конфигурация, поэтому сайт можно сразу запускать. В этом файле вы также можете задать дополнительные параметры, например:
- Включить режим отладки (
c::set('debug', true);
) - Настроить язык панели администратора
- Определить собственные маршруты и прочее
В корне вашего проекта будет уже создана папка content
— она автоматически добавляется Starterkit и служит для хранения всех страниц сайта.
Шаг 5: Запуск и доступ к сайту на Kirby
После настройки ServBay вы сможете открыть сайт на Kirby по сконфигурированному вами адресу.
- Проверьте, что ServBay запущен: Убедитесь, что приложение ServBay работает, и соответствующие веб-сервер и PHP-пакет активны.
- Перейдите на сайт: Откройте браузер и введите домен, который вы указали на шаге 3, например:
https://servbay-kirby.local
.
Вы должны увидеть приветственную страницу Starterkit Kirby. По умолчанию ServBay использует HTTPS, поэтому рекомендуется открывать сайт через https://
.
Шаг 6: Установка и использование Kirby Panel (опционально)
Kirby предоставляет удобную административную панель для управления содержимым, пользователями и настройками сайта.
- Откройте установочную страницу панели: Введите в адресной строке вашего сайта
/panel
, например:https://servbay-kirby.local/panel
. - Создайте администратора: При первом посещении
/panel
вы увидите экран создания администратора. Укажите необходимые данные (имя пользователя, пароль, e-mail) для создания первого администратора. - Вход в панель: После создания учетной записи вы сможете войти в Kirby Panel и начать графическое управление содержимым сайта.
Создание сайта на Kirby
Теперь, когда Kirby успешно установлен и настроен в среде ServBay, можно приступать к созданию сайта, используя его файловую архитектуру. Ниже описаны основные концепции и шаги разработки в Kirby:
Структура контента (Content)
Контент в Kirby хранится в папке content
. Каждая страница — это отдельная папка внутри content
. Содержимое страницы обычно помещается в текстовые файлы (например, page.txt
) с использованием синтаксиса, похожего на Markdown.
Пример: создание страницы «О нас»
В терминале:
cd /Applications/ServBay/www/servbay-kirby-app
mkdir content/about
echo "Title: О нас\n----\nЭто информация о нашей компании." > content/about/about.txt
2
3
Откройте https://servbay-kirby.local/about
(если ваш шаблон поддерживает этот маршрут).
Шаблоны (Templates)
Шаблоны хранятся в папке site/templates
и определяют внешний вид страниц. Имена файлов обычно совпадают с названием соответствующей папки в контенте или названием blueprints (например, about.php
для папки content/about
или страниц с blueprint about
).
Пример: создание шаблона about.php
В файле site/templates/about.php
:
<?php snippet('header') ?>
<main>
<h1><?= $page->title() ?></h1>
<div class="text">
<?= $page->text()->kt() // Рендеринг с помощью KirbyText ?>
</div>
</main>
<?php snippet('footer') ?>
2
3
4
5
6
7
8
9
10
Функция snippet()
используется для подключения повторно используемых частей страницы, таких как шапка или подвал.
Blueprints (схемы)
Файлы blueprints находятся в папке site/blueprints
и определяют структуру страниц, поля и опции для панели администратора. Они пишутся в формате YAML.
Пример: создание схемы about.yml
В файле site/blueprints/pages/about.yml
:
title: Страница "О нас"
columns:
- width: 2/3
fields:
text:
label: Содержимое текста
type: textarea
size: large
buttons:
- bold
- italic
- link
- email
- width: 1/3
fields:
# Поля для боковой панели, например, загрузка изображения
cover_image:
label: Обложка
type: files
max: 1
uploads:
template: image
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
После добавления этого blueprints при создании новой страницы «О нас» через панель администратора появятся указанные поля.
Сниппеты (Snippets)
Сниппетами называют переиспользуемые PHP-фрагменты для шапки, подвала, меню и других элементов, которые размещаются в папке site/snippets
.
Контроллеры и Модели
Для реализации сложной логики используйте контроллеры (site/controllers
) для обработки данных страниц и модели (site/models
) для определения кастомных классов страниц.
Статические ресурсы (Assets)
CSS, JavaScript, изображения и другие статические файлы обычно размещаются в папке assets
в корне проекта. В шаблонах используйте функцию-хелпер url('assets/...')
для получения ссылок на ресурсы.
Пример: подключение CSS и JS
В site/templates/default.php
или site/snippets/header.php
:
<link rel="stylesheet" href="<?= url('assets/css/style.css') ?>">
<script src="<?= url('assets/js/script.js') ?>"></script>
2
Заключение
Следуя этой инструкции, вы шаг за шагом установили и настроили Kirby CMS в локальной среде разработки ServBay. Интегрированная среда ServBay значительно упрощает развертывание и администрирование PHP-приложений, позволяя фокусироваться на возможностях Kirby и гибкости файловой CMS при создании и развитии собственного сайта. Продолжайте изучать шаблоны, blueprints, сниппеты и другие возможности Kirby — и стройте сложные и мощные веб-проекты!