マルチテナンシー
パフォーマンスとセキュリティのために、サブサイトをサーバーとデータベースに分散します
バージョン 1.2.0 リリースの注目点
Multi-Tenancy 1.2.0 は、本番環境の分離ワークフロー向けに主権テナント基盤を追加します。
- 短時間のみ有効で、再送攻撃か ら保護された SSO 訪問によるステートレスなテナント自動ログイン。
- 主権テナント向けのサブサイトごとのデータベースとファイルシステムの分離。
- ホストを考慮したテナントプロビジョニングのための Hostinger マルチテナンシー機能。
- レガシーデータ確認と非同期プッシュ処理のための主権移行検証ゲート。
- Bedrock、FrankenPHP、localhost インストール向けに設定可能な同一マシンのデータベースホストバインディング。
- テナントのブートストラップ、データベースライター、スキーマブートストラップ、ユーザープロビジョニングの改善。
- テナント認証情報を削除する、より安全な主権テナントの解体。
主権移行ワークフロー、マルチテナンシー分離、主権テナント運用のユーザーガイドを参照してください。
要件
- WordPress 5.3 以上
- PHP 7.4 以上
- Multisite Ultimate plugin(有効)
インストール
- アドオンファイルを
/wp-content/plugins/ディ レクトリにアップロードします - WordPress の「Plugins」メニューから plugin を有効化します
- ネットワーク管理画面でアドオン設定を構成します
開発
セットアップ
# Install dependencies
composer install
npm install
# Run tests
npm run test
# Run code standards checks
vendor/bin/phpcs
vendor/bin/phpstan
# Fix code style issues
vendor/bin/phpcbf
# Build for production
npm run build
プロジェクト構造
ultimate-multisite-addon-template/
├── inc/ # PHP クラスとインクルード
│ ├── class-multisite-ultimate-updater.php # 更新ハンドラー
│ └── class-multi_tenancy-main.php # 主な機能
├── tests/ # ユニットテスト
│ ├── bootstrap.php # テストのブートストラップ
│ ├── class-*-base.php # 基本テストクラス
│ └── class-*-test.php # テストケース
├── views/ # テンプレートファイル
├── assets/ # 静的アセット
│ ├── css/ # スタイルシート
│ ├── js/ # JavaScript ファイル
│ └── images/ # 画像
├── lang/ # 言語ファイル
├── composer.json # PHP 依存関係
├── package.json # Node.js 依存関係
├── phpunit.xml.dist # PHPUnit 設定
├── .phpcs.xml.dist # コード標準設定
└── rector.php # コード近代化ルール
テスト
このアドオンには包括的なテストフレームワークが含まれます。
- ユニットテスト: WordPress テストスイートを使った PHPUnit ベースのテスト
- 基本テストクラス: 一般的なテストシナリオ向けのヘルパーメソッドを提供
- テストカバレッジ: コードカバレッジを追跡するように設定済み
- Multisite テスト: テストは Multisite 環境で実行
コード標準
- WordPress コーディング標準: PHPCS により適用
- PHP 7.4+ 互換性: 最新の PHP 機能をサポート
- 静的解析: 型チェックのための PHPStan 統合
- コード近代化: PHP アップグレード向けの Rector ルール
ビルドシステム
- アセット処理: CSS/JS ファイルの圧縮
- 翻訳: POT ファイル生成
- パッケージ化: 配布用アーカイブ作成
- 開発モード: デバッグ用の未圧縮アセット
設定
このアドオンは、ネットワーク管理画面から利用できるさまざまな設定オプションをサポートします。
主権テナント設定
主権テナントでは、トラフィックをテナントにルーティングする前に、テナントデータベース、ファイルシステムルート、データベースホストバインディング、ホスト機能を設定します。データベース認証情報、ホストバインディング、ルーティング、ユーザープロビジョニングに影響する変更を行うたびに、移行検証を実行してください。
テナント実行環境とデータベース権限がローカルソケットまたは同一マシンアクセスを想定している場合にのみ、localhost を使用してください。プロバイダーが設定した権限ホストがそれである場合は、127.0.0.1 またはサービスホスト名を使用してください。
Hostinger 機能
Hostinger マルチテナンシー機能は、共有 Hostinger 統合トークンと連携します。検証前に、ドメインが hPanel に存在し、DNS が Hostinger アカウントを指し、テナントデータベース設定が hPanel と一致していることを確認してください。
フックとフィルター
アクション
ultimate-multisite-addon-template_init- アドオン初期化後に実行ultimate-multisite-addon-template_loaded- すべてのアドオンファイルが読み込まれた後に実行
フィルター
ultimate-multisite-addon-template_settings- アドオン設定を変更ultimate-multisite-addon-template_enabled- アドオンの有効化/無効化状態を上書き
ライセンス
このアドオンは GPL v3 以降のライセンスで提供されます。
サポート
サポートとドキュメントについては、MultisiteUltimate.com をご覧ください
変更履歴
-
バージョン 1.2.0 (2026-06-03): ステートレスなテナント自動ログイン、Hostinger マルチテナンシー機能、サブサイトごとのデータベースとファイルシステム分離、主権移行検証ゲート、テナントブートストラップ/データベースライターの改善、設定可能な MySQL ホストバインディング、より安全な主権テナント解体を追加。
-
バージョン 1.0.1 (2025-09-28): プレフィックスを ultimate-multisite に名称変更。テキストドメインを更新。バージョンを更新。
-
バージョン (2025-09-28): プレフィックスを ultimate-multisite に名称変更。テキストドメインを更新。バージョンを更新。