Перейти до вмісту

Що нового в 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+. Див. [Вимоги] (installation/requirements.md).

Новим мінімумом є MySQL 5.7 (або сумісний MariaDB). Наполегливо рекомендується MySQL 8.4 або вище. Також підтримується MySQL 9.0.

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

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

Щоб допомогти вам виявити та усунути ці проблеми, XOOPS 2.7.0 постачає переддрукований сканер у каталозі upgrade/, який перевіряє наявні шаблони на відомі несумісності Smarty 4 і може автоматично виправляти багато з них.

Дія: Якщо ви оновлюєтеся з 2.5.x і маєте спеціальні теми або старіші модулі, запустіть Перевірку перед друком перед запуском основного засобу оновлення.

Composer-керовані залежності

Section titled “Composer-керовані залежності”

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/developers.md).

Section titled “Нові захищені параметри cookie сесії”

Під час оновлення додається два нових налаштування:

  • session_cookie_samesite — контролює атрибут SameSite у файлах cookie сеансу (Lax, Strict або None).
  • session_cookie_secure — коли ввімкнено, файли cookie сеансу надсилаються лише через HTTPS.

Дія: Після оновлення перегляньте їх у розділі «Параметри системи» → «Параметри» → «Загальні параметри». Див. [Після оновлення] (upgrading/upgrade/ustep-04.md).

XOOPS 2.7.0 додає таблицю бази даних tokens для загального зберігання маркерів із обмеженою областю. Програма оновлення створює цю таблицю автоматично як частину оновлення 2.5.11 → 2.7.0.

Модернізоване зберігання паролів

Section titled “Модернізоване зберігання паролів”

Стовпець bannerclient.passwd було розширено до VARCHAR(255), щоб він міг містити сучасні хеші паролів (bcrypt, argon2). Програма оновлення автоматично розширює стовпець.

Оновлена тема та модельний ряд модулів

Section titled “Оновлена тема та модельний ряд модулів”

XOOPS 2.7.0 поставляється з оновленими інтерфейсними темами:

  • default, xbootstrap (застарілий), xbootstrap5, xswatch4, xswatch5, xtailwind, xtailwind2

Нова Сучасна тема адміністратора включена поряд із існуючою темою переходу.

Новий модуль DebugBar на основі Symfony VarDumper постачається як один із додаткових модулів, які можна встановити. Це корисно для розробки та постановки, але зазвичай не встановлюється на публічних сайтах виробництва.

Див. Вибір теми і Встановлення модулів.

Копіювання в новий випуск більше не перезаписує конфігурацію

Section titled “Копіювання в новий випуск більше не перезаписує конфігурацію”

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

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

Можливість перевантаження шаблонів у темах системного адміністратораТеми адміністратора в XOOPS 2.7.0 тепер можуть замінювати окремі шаблони системного адміністратора, що полегшує налаштування інтерфейсу адміністратора без розгалуження всього системного модуля.

Section titled “Можливість перевантаження шаблонів у темах системного адміністратораТеми адміністратора в XOOPS 2.7.0 тепер можуть замінювати окремі шаблони системного адміністратора, що полегшує налаштування інтерфейсу адміністратора без розгалуження всього системного модуля.”

Для підтвердження, ці частини 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 або подібного)
  • Починати заново? Перейдіть до Вимоги.
  • Оновлення з 2.5.x? Почніть із [Оновлення] (upgrading/upgrade/README.md), а потім запустіть [Перед друком] (upgrading/upgrade/preflight.md).