問題タブ [drupal-rules]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
drupal-7 - Drupal 7 ルールのカスタム アクションは、戻りデータを置換パターンに割り当てます
他のアクションで使用する置換パターンとして値を正常に保存するカスタム Rule-Action を作成するにはどうすればよいですか?
ここでは、Product-Order から Product-Display 情報を取得する際に非常に役立ちました。
私が言ったように、リンクされた回答は大いに役立ちましたが、Product-Display の返されたパス データはhttp://www.mysite/node/77
形式で返されます。ただし、実際には数値のみが必要なので、Fetch entity by idアクションを実行して数値を指定し、Product-Display ノードなどを公開することでノードをロードできます。
そこで、Product-Display URL(node/77) を取得して 77 を返すカスタム アクションを実装しました。Fetch エンティティを IDコードでコピーして変更し、返された数値を保存して他のアクションで使用できるようにしました。コードは以下のとおりです。
私が言ったように、変更したコードをコピーしたので、publish_product_display_node以外のすべての機能を完全に理解しているとは言えません。
私のコード変更は、Product-Display URL トークンを引数として設定し、エンティティ変数ラベル (Display NID) と値 (display_nid) を設定する限り機能します。問題は、新しく作成されたアクションでdisplay_nidをチェックすると、値が空になることです。
次のアクションで使用できるように、エンティティ値を正常に保存する方法を理解するのに助けが必要です。
drupal - drupal ルールのユーザー アカウントは変更されていません
Drupal 7 + Rules 2 を使用しており、ロールが別のロールに変更されたときにユーザーにメッセージを表示するルールを作成したいと考えています。データ比較条件で「アカウント変更なし」を使用して実験していましたが、うまくいきませんでした。私の構成は以下のとおりですが、「変更されていない」機能を使用することは私にはなじみがなく、正しい軌道に乗っているかどうかはわかりません。
- イベント: 既存のユーザー アカウントを更新した後
- 調子:
- データ比較 - account-unchanged:roles equals RoleA
- データ比較 - account:rolesはRoleBと等しい
- アクション: サイトにメッセージを表示する=役割が変更されました!!!
前に述べたように、RoleA を持っていたユーザーを RoleB を持つように更新しても結果は生成されず、Rules デバッガーでは、条件は常に FALSE と評価されます。
上記よりもこれを達成する代替/より良い方法がある場合は、正しいトラックに切り替えていただければ幸いです:)
本当にありがとう!
drupal-7 - コンテンツのデフォルトが未公開の場合、コンテンツを公開した後にユーザー ポイントを付与するにはどうすればよいですか?
デフォルトでは公開されていないコンテンツタイプ「コンテンツ」の追加コンテンツが公開されたときにユーザーポイントを付与したい。Rules モジュールでこれを試しました: - イベント: 新しいコンテンツを保存した後 - 要素: * コンテンツのタイプ: コンテンツ * コンテンツが公開されました - アクション: ユーザーにポイントを付与します
そのため、ユーザーが「コンテンツ」コンテンツを追加すると、ユーザー ポイントは取得されず、コンテンツは非公開になります。私の考えでは、モデレーターである私がコンテンツを公開した後にポイントが付与されるというものでした。でもどうやら俺が設定したルールでそれをやった後、彼らはポイントを得られないらしい。私は何を間違えましたか、どうすればこれを解決できますか?
email - ノード作成者ではなく改訂編集者に電子メールを送信
私は現在、Workbench Moderation モジュールを使用して、コンテンツの一部をモデレートし、公開前に承認プロセスを通過できるようにしています。これはすべてうまくいきます。私のプロセスの一部は、編集したコンテンツが承認/公開されたときにユーザーにメールを送信することです。私は現在、ノードが公開され、ノードがモデレーションの下にあるときに、ノードが公開されたことを示す電子メールがノードの作成者に送信されるようにルールを設定しています。他人のコンテンツを編集する人が時々いるという事実を除けば、これは問題ありません。つまり、「ボブ」が基本的なページを作成し、それが公開され、彼が作成者になります。数か月後、「スージー」はボブのページの編集を任されました。彼女は新しいドラフトを作成し、レビューのために送信し、マネージャーがそれを公開します。問題は、ボブが公開されたというメールを受け取り、スージーは自分の編集が公開され、現在公開されていることを知らないことです。何かが公開されたときに送信される電子メールをルールのトークンで探していましたが、元の作成者ではなくリビジョンの作成者に送信する限り意味のあるものを見つけることができませんでした. これは可能ですか?
drupal-7 - 特定のフィールドの値/計算値に等しいユーザーポイントをユーザーに付与する方法は?
フィールド「値」(整数)と「コンテンツを公開してユーザーにポイントを付与する」というフラグを持つコンテンツタイプ「コンテンツ」があります。コンテンツにこのフラグが付けられるたびに、コンテンツの作成者に「値」フィールドの値に等しいユーザー ポイントを付与したいと考えています。
次のようなルールモジュールで問題の最初の部分を解決しようとしました:
ただし、flagged-node:field-value
ポイントセクションで選択することはできません。私も試しました:
しかし、変数「結果」は利用できません。この問題を解決するにはどうすればよいですか?
drupal - ユーザーが Drupal Commerce で独自の製品を作成できるようにする
Drupal Commerce をすべてセットアップしましたが、ユーザーが独自の製品を追加できるようにする必要があります (eBay など)。
関連するすべてのフィールドを含む EntityForm タイプを作成し、送信時に (コマース製品タイプの) エンティティを作成するように設定しました。
問題は、その製品タイプのカスタム フィールドに情報を送信できないことです。
これらのカスタム フィールドを使用可能にする方法はありますか?
前もって感謝します!ジェレミー