Drupalのワークフローで承認依頼中のコンテンツ一覧をViewsで設定する方法


以前、Drupalの役割や権限、ワークフローの設定方法についてブログ記事を掲載しました。
その記事についてTwitterでコメントいただきました。
ワークフローの設定はわかった。承認依頼が出てるコンテンツ一覧を表示するViewsがうまく作れないhttps://t.co/zBKkVAMlVI
— 海老庵🦐 (@evian) May 9, 2023
そこで今回はその解決策となる記事を書いてみました。
※ 本記事は以前の記事の実践編となっておりますので、まだ見られていない方はこちらをご覧ください。
Drupalの役割や権限、ワークフローの設定方法
作りたいもの
本記事で作りたいものはこちらです。
承認依頼がきているコンテンツ一覧
それではさっそく実装していきます。
実装方法
「WorkFlows」「Content Moderation」モジュールをインストールした段階で、標準で「モデレート中のコンテンツ」という Views が用意されます。
新しく Views を作成してもいいですが、標準で用意されていますので今回はこちらを拡張して実装します。
まず、新しく「ディスプレイ」を増やします。ページとして一覧を作りたいので、「ページ」を選択してください。
設定項目を引き継いだ状態で「ディスプレイ」が追加されます。
Viewsで設定する項目は1つのみです。
[フィルターの条件]から「モデレーション状態」を選択してください。
今回、ワークフローの設定で「承認依頼中」というモデレーション状態を用意しましたので、それを選択し保存します。
モデレーションステータスの追加方法・設定方法については前回の記事で紹介していますので、そちらをご覧ください。
では実際に記事を作成して一覧を見てみましょう。
動作確認
「マネージャーA」という「マネージャーロール」を持ったユーザーと、「社員B」という「社員ロール」ユーザーを作成しました。
「社員B」で、作成した記事の承認依頼を出して、「マネージャーA」で記事一覧から確認するといったワークフローに沿って見てみます。
「社員Bユーザー」で記事を作成します。
「マネージャーAユーザー」で、一覧にアクセスしてみましょう。
記事が一覧に上がっているのを確認できました。
フィルターがいらないだったり、本文の内容が見たいという場合は Views のフィールドの設定・フィルターの条件を見直してみてもいいかもしれません。
一例ですが、筆者が作成した一覧をご紹介します。
まとめ
今回は、ワークフローの実践的な使用方法についてご紹介しました。
WorkFlow は Views と組み合わせることで、タスク管理や社内情報管理システムのような要件にも応用できそうですね。
本記事で取り扱っている機能はDrupal標準の機能として対応しています。
下書きから公開までの認証フローを整理したい場合は、ぜひ検討してみてはいかがでしょうか?

梅木 和弥/ Drupalエンジニア
Webのシステム開発における、設計・実装に携わっています。
業務ドメインを技術に翻訳する工程に注力しております。SOLID原則が僕の物差しです。