Rules モジュールを利用して、CCKフィールドに特定の値があるノードを検索し、見つかったら、それらのノードの作成者にメールを送信するにはどうすればよいですか?
たとえば、新しいCCKフィールドを追加するときに、ユーザーにログインしてプロファイルを更新させたい場合、どうすればよいですか?
そのためのルールを使用する場合は、CCKフィールドを追加するときに、独自のイベントを作成する必要があります。次に、新しいCCKフィールドが追加されたときにイベントをトリガーするコードを記述し、そのタイプのノードまたはルールで必要なデータをルールに提供する必要があります。
これが機能するために必要なカスタムコーディングの量は、カスタムモジュールでhook_mail
を使用してこれを実行するために必要な量よりも多いと思います。また、必要なことを実行するためのルールの構成に問題がある可能性もあります。ルールでデータ型の配列を使用したことはないので、複雑になる可能性もあります。
ルールと Views Bulk Operations を使用してこれを実現できる場合があります。次のスクリーンキャストがあなたを始めるかもしれません: NodeOneがDrupalを話します:ルール+ VBO、再訪!
Content Access Mail モジュールを見てください(開示:作成しました)。プロジェクトページからの詳細は次のとおりです。
これは、特定のノードを表示する権限を持つすべてのユーザーにルールベースの電子メールを送信できるようにするルールモジュールのアクションを提供します。
それはほとんどあなたが望むことをするので、hook_mailの使用についての@googletorpのコメントに続いて、これはあなたがあなた自身のモジュールに向かって最初の一歩を与えるかもしれません。
ここに入力のもう少し: http://www.midwesternmac.com/blogs/jeff-geerling/sending-thousands-automated-sc
ルールを通じて数百または数千の電子メールを直接送信するよりもはるかにスケーラブルなシステムを構築する必要がありました。その方法で(および新しい電子メールが送信されたときにサーバーリソースを過剰に使用するリスクを冒して)代わりに、SimpleNewsモジュールをインストールし、ルールを介していくつかのフックを使用して、cronの実行時にバッチで送信される電子メールをスケジュールしました。
もちろん、数百または数千のメールの規模に達したら、Amazon SESなどの外部リソースの使用を検討し始めるかもしれません。私はあなたがそのレベルに完全ではないと思います:-)
Drupal 7の場合のルールとキューAPIの組み合わせについて書いたばかりの記事は次のとおりです: ルールとキューAPIを使用して大量のメールをバッチ送信する 。
そのような電子メールを送信したいノード(作成者と共に)の( Views モジュールを使用して)ビューを作成できると思います。このようなビューの作成に成功したら、次のように続けます。
ルールコンポーネントと組み合わせたVBOの使用に関するその他の図については、次の質問に対する回答を参照してください。