Перейти к содержимому

Что нового в XOOPS 2.7.0

XOOPS 2.7.0 - это значительное обновление серии 2.5.x. Перед установкой или обновлением просмотрите изменения на этой странице, чтобы знать, чего ожидать. Приведенный ниже список ориентирован на элементы, влияющие на установку и администрирование сайта — для полного списка изменений см. примечания к выпуску, поставляемые с дистрибутивом.

XOOPS 2.7.0 требует PHP 8.2 или новее. PHP 7.x и более ранние версии больше не поддерживаются. PHP 8.4 или выше настоятельно рекомендуется.

Действие: Подтвердите, что ваш хост предлагает PHP 8.2+ перед началом. См. Requirements.

Новый минимум - MySQL 5.7 (или совместимая MariaDB). MySQL 8.4 или выше настоятельно рекомендуется. MySQL 9.0 также поддерживается.

Старые предупреждения о проблемах совместимости PHP/MySQL 8 больше не применяются, потому что затронутые версии PHP больше не поддерживаются XOOPS.

Это единственное наибольшее изменение для существующих сайтов. XOOPS 2.7.0 использует Smarty 4 в качестве движка шаблонов. Smarty 4 более строг по синтаксису шаблонов, чем Smarty 3, и некоторые пользовательские темы и шаблоны модулей могут нуждаться в корректировке перед правильной отрисовкой.

Чтобы помочь вам определить и исправить эти проблемы, XOOPS 2.7.0 поставляется с сканером предполета в директории upgrade/, который проверяет ваши существующие шаблоны на известные несовместимости Smarty 4 и может автоматически исправить многие из них.

Действие: Если вы обновляетесь с 2.5.x и имеете пользовательские темы или старые модули, запустите Preflight Check перед запуском основного обновления.

XOOPS 2.7.0 использует Composer для управления своими PHP зависимостями. Они живут в xoops_lib/vendor/. Библиотеки третьих сторон, которые ранее были объединены в ядро или модули — PHPMailer, HTMLPurifier, Smarty и другие — теперь поставляются через Composer.

Действие: Большинство операторов сайта не должны ничего делать — релизные архивы поставляются с уже заполненным vendor/. Если вы перемещаете или обновляете сайт, скопируйте всё дерево xoops_lib/, включая vendor/. Разработчики, клонирующие git репозиторий, должны запустить composer install внутри htdocs/xoops_lib/. См. Notes for Developers.

Два новых предпочтения добавлены во время обновления:

  • session_cookie_samesite — управляет атрибутом SameSite на cookies сеанса (Lax, Strict, или None).
  • session_cookie_secure — при включении, cookies сеанса отправляются только через HTTPS.

Действие: После обновления просмотрите эти параметры в System Options → Preferences → General Settings. См. After the Upgrade.

XOOPS 2.7.0 добавляет таблицу БД tokens для хранения универсальных токенов с областью действия. Обновитель создает эту таблицу автоматически как часть обновления 2.5.11 → 2.7.0.

Столбец bannerclient.passwd расширен до VARCHAR(255), чтобы он мог вмещать современные хэши паролей (bcrypt, argon2). Обновитель расширяет столбец автоматически.

XOOPS 2.7.0 поставляется с обновленными фронтэнд-темами:

  • default, xbootstrap (устаревшая), xbootstrap5, xswatch4, xswatch5, xtailwind, xtailwind2

Новая Modern админ-тема включена рядом с существующей темой Transition.

Новый модуль DebugBar на основе Symfony VarDumper поставляется как один из опциональных устанавливаемых модулей. Это полезно для разработки и staging, но обычно не устанавливается на публичные production сайты.

See Select Theme и Modules Installation.

Копирование нового релиза больше не перезаписывает конфигурацию

Заголовок раздела «Копирование нового релиза больше не перезаписывает конфигурацию»

Ранее копирование нового дистрибутива XOOPS на существующий сайт требовало осторожности, чтобы избежать перезаписи mainfile.php и других файлов конфигурации. В 2.7.0 процесс копирования оставляет существующие файлы конфигурации неповрежденными, что делает обновления заметно безопаснее.

Вам все равно следует сделать полную резервную копию перед любым обновлением.

Возможность переопределения шаблонов в админ-темах системы

Заголовок раздела «Возможность переопределения шаблонов в админ-темах системы»

Админ-темы в XOOPS 2.7.0 теперь могут переопределять отдельные админ-шаблоны системы, облегчая настройку UI администрирования без форка всего модуля системы.

Для уверенности, эти части XOOPS работают так же в 2.7.0, как в 2.5.x:

  • Порядок страниц установщика и общий поток
  • Разделение конфигурации mainfile.php плюс xoops_data/data/secure.php
  • Рекомендуемая практика перемещения xoops_data и xoops_lib вне веб-корня
  • Модель установки модулей и формат манифеста xoops_version.php
  • Рабочий процесс переноса сайта (резервная копия, редактирование mainfile.php/secure.php, использование SRDB или похожего)
  • Начинаете с нуля? Продолжайте к Requirements.
  • Обновляетесь с 2.5.x? Начните с Upgrading, затем запустите Preflight Check.