DrupalのTrigger、Actionsに細かな設定を与えるモジュール「Rules 」

in
印刷用ページ印刷用ページ

Drupal6からコアに取り込まれたTriggerとActions。
特定のシステムイベントを引き金(トリガ)として、アクションを実行するためのモジュールですがコアのままですと設定できる項目が少なく思い通りの動きを出すことが難しい・・・。
そこでTrigger、Actionsに細かな設定を与えることのできるモジュール「Rules 」を使ってみました。

今回は匿名ユーザーがコンテンツを作成したときにだけ「投稿ありがとうございました。」といったメッセージ画面に遷移するよう設定してみます。

http://drupal.org/project/rules
よりダウンロードしモジュールを有効にします。
管理画面からルール→アクションを起こすルールを開き、ルールを新しく開くを表示します。

各項目を入力します。

ラベル
ルールに適切な題名を入力。
今回は匿名ユーザーがコンテンツを作成した時
イベントの選択
このルールが適用されるイベントを選択します。
今回は匿名ユーザーがコンテンツ作成した時ですので、「新しい」コンテンツを保存後」を選択します。
Categories
必須ではないので今回は入力しませんでした・・・。
このルールは動作中で、関連付けられたイベントが発生される際に評価されます。
チェックを入れます。(日本語訳が少し変な気が。ここにチェック入れることでルールが動作するんだと思います。)

変更を保存をクリック。 

このような画面に切り替わりますので、まずは条件の追加を設定していきます。

追加する条件を選択
今回はユーザがロールを持っているかを選択

NEXTをクリック。 

このような画面に切り替わるので格項目を入力していきます。

引数の設定・・・ユーザ
コンテンツの投稿者を選択。
ロールを選択
匿名ユーザにチェックを入れます。
選択したロールのいずれか、またはすべてと一致
今回は一項目しかチェックを入れていないので関係ないと思いますが一応「すべて」にチェックを入れました。

保存をクリックします。

条件が追加されました。続いてアクションを追加していきます。

追加するアクションを選択
今回は匿名ユーザーがコンテンツを作成後指定したページへ遷移させたいので「ページ遷移」を選択します。

NEXTをクリックします。

このような画面に切り替わりますので各項目を入力していきます。

宛先
遷移させたいページのパスを入力

.

移動先のパラメータが与えられても、指定したパスへリダイレクトを強制
一応チェックを入れておきました。
保存をクリック。
以上で完了です。

 

確認してみると作成したルールがきちんと動作しています。
ログインした状態、していない状態でそれぞれコンテンツを作成してみたところログインしてない状態(匿名ユーザ)で作成したときのみ指定したページへ遷移しました。

Trackback URL for this post:

http://blogs.liquidst.jp/trackback/242