Мы рады представить JohnCMS 9.9 — один из самых насыщенных релизов ветки 9.x. В этой версии появились четыре новых модуля, визуальный редактор CKEditor пришёл на смену BB-кодам во всех разделах сайта, а внутренняя архитектура сделала большой шаг вперёд: новый компонент пагинации, именованные маршруты и продолжение перевода модулей на более современную архитектуру.
Модуль «Коллекции» позволяет создавать произвольные каталоги: разделы, настраиваемые поля и элементы. Структуру данных вы определяете сами, а управление полностью выполняется через админ-панель. Это универсальный инструмент для каталогов организаций, справочников, портфолио и любых других структурированных списков. Модуль пока довольно новый и ещё многое в нем не реализовано. Постепенно он будет развиваться.
Модуль «Согласия» помогает привести сайт в соответствие с требованиями законодательства о персональных данных в разных странах:
В заголовках согласий разрешены ссылки на другие страницы — например, «Ознакомлен с Публичной офертой и даю Согласие на обработку персональных данных».
В связке с модулем «Согласия» появился настраиваемый cookie-баннер: включение, мультиязычный текст и версия для повторного показа настраиваются в админке. Счётчики аналитики получили флаг «Загружать только после согласия на cookie» — такие счётчики не выполняются, пока посетитель не согласится на принятие cookies (это сделано для соблюдения законодательства различных стран).
Новый модуль «Контакты» — это публичная страница с контактной информацией (email, телефон, адрес, часы работы, соцсети и мессенджеры), микроразметкой Schema.org и формой обратной связи. Обращения сохраняются в базе и доступны в админке со списком, фильтром по статусу и уведомлениями на e-mail. Форма защищена капчей для гостей, honeypot-полем, проверками CSRF, флуда и бана, а также интегрирована с модулем «Согласия».
В версии 9.8 полноценный визуальный редактор появился на форуме, а теперь он доступен везде:
Для перевода существующих текстов из BB-кодов в HTML добавлены одноразовые консольные команды: downloads:convert-bbcode, library:convert-bbcode, mail:convert-bbcode, а также downloads:convert-comments, library:convert-comments и album:convert-comments.
Модули «Загрузки» и «Библиотека» значительно переписаны с полноценной интеграцией в роутер:
В админке появилась страница «Обслуживание»: теперь консольные команды можно запускать прямо из панели управления. Быстрые команды (например, очистка кэша) выполняются сразу, а долгие (например, генерация sitemap) ставятся в очередь и выполняются планировщиком в фоне.
При обновлении с 9.8 выполните скрипты создания таблиц новых модулей:
Затем при необходимости запустите одноразовые команды миграции: генерацию slug-ов для загрузок и библиотеки и конвертацию BB-кодов в HTML (список команд — в разделах выше). Названия языков в переключателе обновятся после обновления списка языков в админке.
Полная инструкция по обновлению доступна здесь: https://docs.johncms.com/nachalo-raboty/obnovlenie-s-versii-9.8
Полный список изменений можно посмотреть здесь: CHANGELOG