コンテンツにスキップ

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+ を提供していることを確認してください。要件を参照してください。

新しい最小要件は MySQL 5.7(または互換性のある MariaDB)です。MySQL 8.4 以上を強くお勧めします。MySQL 9.0 もサポートされています。

PHP/MySQL 8 互換性の問題に関する古い警告はもはや適用されません。影響を受ける PHP バージョンは XOOPS によってもはやサポートされていないためです。

Smarty 4 が Smarty 3 に置き換わります

Section titled “Smarty 4 が Smarty 3 に置き換わります”

これは既存サイト向けの最大の変更です。XOOPS 2.7.0 はテンプレートエンジンとして Smarty 4 を使用しています。Smarty 4 は Smarty 3 よりもテンプレート構文が厳密で、カスタムテーマとモジュールテンプレートの一部は正しくレンダリングされる前に調整が必要な場合があります。

これらの問題を識別して修復するのに役立つように、XOOPS 2.7.0 は upgrade/ ディレクトリに プリフライトスキャナー が付属しており、既存テンプレートを既知の Smarty 4 非互換性について調査し、その多くを自動的に修復できます。

アクション: 2.5.x からアップグレードしており、カスタムテーマまたは古いモジュールがある場合は、メインアップグレーダーを実行する 前に プリフライトチェックを実行してください。

XOOPS 2.7.0 は Composer を使用して PHP 依存関係を管理します。これらは xoops_lib/vendor/ に置かれます。以前はコアまたはモジュールにバンドルされていたサードパーティライブラリ — PHPMailer、HTMLPurifier、Smarty など — は Composer を通じて提供されるようになりました。

アクション: ほとんどのサイト管理者は何もする必要がありません — リリースの tarball には vendor/ が既に設定されています。サイトを移動またはアップグレードする場合は、vendor/ を含む xoops_lib/ ツリー全体をコピーしてください。git リポジトリをクローンしている開発者は、htdocs/xoops_lib/ 内で composer install を実行する必要があります。開発者向けノートを参照してください。

新しい強化されたセッションクッキー設定

Section titled “新しい強化されたセッションクッキー設定”

アップグレード中に 2 つの新しい設定が追加されます:

  • session_cookie_samesite — セッションクッキーの SameSite 属性を制御します(LaxStrict、または None)。
  • session_cookie_secure — 有効にするとセッションクッキーは HTTPS でのみ送信されます。

アクション: アップグレード後、System Options → Preferences → General Settings でこれらを確認してください。アップグレード後を参照してください。

XOOPS 2.7.0 は汎用スコープ付きトークンストレージ用に tokens データベーステーブルを追加します。アップグレーダーは 2.5.11 → 2.7.0 アップグレードの一部として自動的にこのテーブルを作成します。

bannerclient.passwd 列が VARCHAR(255) に拡張されているため、最新のパスワードハッシュ(bcrypt、argon2)を保持できます。アップグレーダーは自動的に列を拡張します。

更新されたテーマとモジュールのラインアップ

Section titled “更新されたテーマとモジュールのラインアップ”

XOOPS 2.7.0 は更新されたフロントエンドテーマで出荷されます:

  • defaultxbootstrap(レガシー)、xbootstrap5xswatch4xswatch5xtailwindxtailwind2

既存の Transition テーマに加えて、新しい Modern 管理テーマが含まれています。

Symfony VarDumper に基づいた新しい DebugBar モジュールは、オプションのインストール可能なモジュールの 1 つとして出荷されます。開発およびステージング環境に役立ちますが、通常はパブリック本番サイトにはインストールされません。

テーマを選択およびモジュールのインストールを参照してください。

新しいリリースをコピーしても設定が上書きされなくなります

Section titled “新しいリリースをコピーしても設定が上書きされなくなります”

以前は、既存のサイトに新しい XOOPS 配布をコピーする場合、mainfile.php と他の設定ファイルの上書きを避けるために注意が必要でした。2.7.0 では、コピープロセスは既存の設定ファイルをそのままにします。これにより、アップグレードが顕著に安全になります。

アップグレード前に必ず完全なバックアップを作成してください。

システム管理テーマのテンプレートオーバーロード機能

Section titled “システム管理テーマのテンプレートオーバーロード機能”

XOOPS 2.7.0 の管理テーマは、システム管理テンプレートを個別にオーバーライドできるようになりました。これにより、システムモジュール全体をフォークすることなく、管理 UI をカスタマイズしやすくなります。

安心のために、これらの XOOPS の部分は 2.7.0 で 2.5.x と同じ方法で動作します:

  • インストーラーページの順序と全体的なフロー
  • mainfile.phpxoops_data/data/secure.php の設定分割
  • xoops_dataxoops_lib をウェブルートの外に移動する推奨慣行
  • モジュールのインストール モデルと xoops_version.php マニフェスト形式
  • サイト移動ワークフロー(バックアップ、mainfile.php/secure.php を編集、SRDB または同様のものを使用)