Kedu — How it works

Kedu — How it works

@petchenushka

Кеду - это федеральный портал об образовании. На нем могут найти друг друга те, кто хочет получить образование и те, кто это образование дает.


За основу выбрали Bitrix. Редакция - стандарт.

Выбрали то, с чем лучше всего умеем работать. Плюс в Bitrix из коробки дает довольно неплохую админку для работы контент-менеджеров.


Архитектура

Подключен Composer, используем необходимые пакеты.

Для упорядочивания важного кода используется php-cs-fixer.

Автодеплой с использование Rocketeer, подхватывается ветка master.

Для внесения правок в структуру БД используем консольные миграции для Битрикс на базе Symphony console.

Для роутинга активно используется urlrewrite.php.

В общих чертах пытаемся придерживаться этой модели ветвления.


Основной модуль

Основа - собственный модуль. Для работы с различными сущностями - отдельные классы.

Пример основного класса модуля.

Основная логика при работе с админкой и добавлением/изменением данных реализована через события.

Пример обработки событий для инфоблоков.


Некоторые параметры зашиты как стандартные в модуле, некоторые - редактируются из настроек модуля.

Пример задания стандартных параметров для модуля.


Компоненты и шаблоны

Для больших разделов сайта используются комплексные компоненты. Как правило они относятся к модулю.

Реализуется правильное разделения с использованием result_modifier и component_epilog.

Пример комплексного компонента по работе с каталогом учебных заведений.


Верстка

Как основной Фреймворк для работы со стилями используется Bootstrap 4.

Стили пишутся и собираются с использованием препроцессора SCSS.

Пример styles.scss, из которого собираются готовые стили.

Report Page