Workspaces × Workflows:Drupal CMS で実現する多段階ステージング&承認フロー

DrupalCMSのサムネイル
目次

はじめに:なぜ今、Workspaces × Workflows なのか

大規模サイトを運用する皆さん、こんな悩みはありませんか。

「キャンペーン用の大量コンテンツを事前に準備したいが、本番環境に影響を与えたくない」
「承認フローが複雑で、誰がどの段階で承認すべきか分からない」
「別環境でのステージングは同期が大変で、運用コストがかかりすぎる」

Drupal CMSのWorkspacesWorkflowsを組み合わせれば、これらの課題を一気に解決できます。同一サイト内で複数のステージング環境を構築し、柔軟な承認プロセスを実現。しかも、ワンクリックで本番環境への切り替えが可能です。

実際に、ある大手ECサイトでは、この仕組みを導入することで運用コストを30%以上削減し、コンテンツ公開までの時間を平均2日から4時間に短縮した事例も報告されています。

Workspaces(ワークスペース)とは:同一DBで実現する革新的なステージング

従来のステージング手法の限界

これまでのステージング環境は、以下のような課題を抱えていました。

  • 別サーバー方式:環境間のデータ同期が複雑で、人的ミスが発生しやすい
  • Gitブランチ方式:コンテンツとコードの分離が難しく、非技術者には扱いづらい
  • マルチサイト方式:設定が複雑で、メンテナンスコストが高い

Workspacesが変えるステージングの常識

DrupalのWorkspacesモジュールは、同一データベース内に複数の作業空間を作成する画期的なアプローチを採用しています。

本番環境(Live Workspace)
  ├── Spring Campaign Workspace
  │     └── 100件の新商品ページ(ドラフト)
  ├── UI Redesign Workspace
  │     └── 新デザインのランディングページ
  └── QA Testing Workspace
        └── バグ修正版のコンテンツ

 

各ワークスペースは独立して動作し、他のワークスペースや本番環境に影響を与えません。準備が整ったら、Publishボタンをクリックするだけで、全ての変更を本番環境に反映できます。

Workflows(承認フロー)との連携:承認プロセスの可視化

Content Moderation(コンテンツ承認)による柔軟な承認フロー

Drupal CMSでは、Content Moderation(Workflowsの一部)がデフォルトで有効になっています。これにより、以下のような承認フローを簡単に構築できます:

  • ドラフト(Draft):編集者がコンテンツを作成
  • レビュー待ち(Needs Review):上長の確認が必要な状態
  • 公開承認(Approved):最終承認を得た状態
  • 公開(Published):実際にサイトに表示される状態

役割に応じた権限設定

編集者(Editor):
  - ドラフト作成: 可能
  - レビュー申請: 可能
  - 公開: 不可能

レビュアー(Reviewer):
  - ドラフト作成: 可能
  - レビュー承認: 可能
  - 公開: 不可能

公開責任者(Publisher):
  - 全ての操作: 可能

実装手順:30分で始めるWorkspaces × Workflows

ステップ1:Drupal CMSのインストール

# Composerを使用したDrupal CMSのインストール
composer create-project drupal/cms my-drupal-site

# サイトのセットアップ
cd my-drupal-site
php -S localhost:8000 -t web

Drupal CMSでは、WorkspacesとContent Moderationが初期レシピとして自動的に有効化されているため、追加の設定は不要です。

ステップ2:ワークスペースの作成

  • 管理画面にログイン後、**「設定」→「Workspaces」**へ移動
  • 「+ ワークスペースを追加」をクリック
  • 以下の情報を入力:
    • 名前:Spring Campaign 2025
    • 説明:2025年春のキャンペーン用コンテンツ
    • 親ワークスペース:Live(本番環境)

ステップ3:承認ワークフローのカスタマイズ

  • **「設定」→「ワークフロー」**へ移動
  • 「Editorial」ワークフローを編集
  • 必要に応じて状態や遷移を追加:
    • 法務確認(Legal Review)
    • 翻訳待ち(Awaiting Translation)
    • 最終確認(Final Check)

ステップ4:Gin Admin Themeでモダンな管理画面を実現

Drupal CMSにはGin Admin Themeが標準搭載されており、ダークモード対応の洗練された管理画面を提供します。

# Ginの設定画面へアクセス
/admin/appearance/settings/gin

# 推奨設定
- ダークモード: 自動切り替え
- サイドバー: 折りたたみ可能
- フォーカスモード: 有効

ベストプラクティス:成功への5つのポイント

ワークスペースの命名規則を統一する

[目的]-[期間]-[バージョン]
例:campaign-2025spring-v1
    redesign-homepage-v2
    bugfix-checkout-v1

 

定期的なクリーンアップを実施

古いワークスペースは定期的に削除し、データベースのパフォーマンスを維持します。

// 30日以上古いワークスペースを自動削除
$old_workspaces = \Drupal::entityTypeManager()
  ->getStorage('workspace')
  ->loadByProperties([
    'created' => ['<', strtotime('-30 days')]
  ]);

Package Managerとの連携でロールバック体制を構築

Drupal 11.2から導入されたPackage Managerと連携することで、失敗時の即座のロールバックが可能になります。

権限設定は最小権限の原則で

各ユーザーには必要最小限の権限のみを付与し、誤操作を防ぎます。

ワークスペース間の依存関係を明確に

複数のワークスペースが並行して動作する場合、依存関係を文書化し、公開順序を明確にします。

実績:Enterpriseでの活用事例

事例1:大手ECサイト(商品数10,000点以上)

  • 課題:季節ごとのキャンペーンで大量の商品情報を更新する必要があった
  • 解決策:キャンペーンごとにワークスペースを作成し、100件以上の商品を事前準備
  • 成果:公開作業時間を8時間から15分に短縮

事例2:多言語ニュースサイト(5言語対応)

  • 課題:翻訳と承認のタイミングがずれ、公開が遅れがちだった
  • 解決策:言語ごとのワークスペースと承認フローを構築
  • 成果:全言語同時公開の成功率が60%から95%に向上

将来への展望:Experience Builderとの統合

Drupalの次世代ビジュアルエディタ「Experience Builder」は、Workspaces APIを活用したリアルタイムプレビュー機能を計画しています。これにより、デザイナーとコンテンツ編集者の協業がさらにスムーズになることが期待されています。

また、Site Templates機能との統合により、ワークスペースごとに異なるテンプレートを適用できるようになる予定です。

まとめ:今すぐ始められる次世代コンテンツ管理

Workspaces × Workflowsの組み合わせは、大規模サイト運用における多くの課題を解決します。

  • リスク低減:本番環境に影響を与えずに大規模な変更をテスト
  • 時間短縮:承認プロセスの可視化により、ボトルネックを解消
  • コスト削減:別環境の構築・維持が不要で、運用コストを大幅削減
  • 柔軟性向上:役割に応じた権限設定で、セキュアかつ効率的な運用
  • 将来性確保:Experience Builderなど新機能との統合も視野に

もしあなたが今、Gitブランチや別環境でのステージングに課題を感じているなら、Drupal CMSのWorkspaces × Workflowsは最適な解決策となるでしょう。30分あれば基本的な環境構築が可能です。まずは小規模なプロジェクトから始めて、その威力を実感してみてください。

参考リンク

カテゴリ