Что нового
Журнал обновлений, улучшений и исправлений.
Дерево категорий и поиск в выпадающих списках связей
Выпадающие списки для relation-полей теперь поддерживают иерархию (tree: true — подкатегории с отступами) и поиск (search: true — фильтрация при вводе).
Выпадающие списки для связанных полей в формах редактирования
При редактировании записи dynamic-таблицы поля-связи (например category_id) теперь отображаются как выпадающий список со значениями из связанной таблицы. Настройка через relations в page_config.
IN-фильтры для get_filters + дерево категорий в dynamic-шаблонах
Исправление сохранения настроек плагинов: checkbox и права доступа
При снятии галки checkbox значение не сохранялось. Плюс plugin.json очищается от runtime-полей при сохранении.
Авто-инкремент views_count в dynamic-страницах
При просмотре записи на dynamic-странице колонка views_count автоматически увеличивается на 1.
Исправление уязвимости: защита SQLite-базы от прямого доступа
Критическая уязвимость: база данных cms.db могла быть доступна по прямой HTTP-ссылке из-за дублирования путей. Исправлен конфиг, удалены дубликаты баз. Добавлена тройная защита в .htaccess. Страница документации «Безопасность».
Поиск по сайту (page_type search)
Новый тип страницы search: полнотекстовый поиск по всем таблицам контента. Авто-определение текстовых колонок, релевантность, сниппеты с подсветкой.
Исправление порядка инициализации сессий и NavigationItem
session_save_path перенесён до загрузки плагинов. Устранены PHP 8.1 warnings в NavigationItem. Удалены устаревшие проектные копии модели.
Читать полный список изменений →Сортировка dynamic-страниц и синхронизация версионирования
Исправлен порядок записей на dynamic-страницах: page_config теперь управляет полем и направлением сортировки. Версионирование приведено к единой схеме SemVer.
Исправление установщика и восстановление после аварии
10+ багфиксов по результатам трёх раундов тестирования установки с нуля. Восстановление core_lib на всех проектах.
Читать полный список изменений →