3

異なるコンテンツタイプ(B)の単一ノードを参照するコンテンツタイプ(A)があります。参照されるノード(B)は、この新しいノードを作成するユーザーの情報を使用してプログラムで決定できます(A)...各ユーザーは参照されるコンテンツタイプ(B)の単一のノードのみを作成できるため、この単一のノードは常にユーザーが作成するコンテンツタイプBのノードから参照されます。

参照されるノードは常に既知であるため、ユーザーが参照値を入力する必要はなく、バックグラウンドで設定する必要があります。私はこれを行うことについて多くのスレッドを見つけましたが、どれも明確でなく、実際に私にとってうまくいくようには見えません。

どんな助けでも大歓迎です。

注:Drupal 6

4

2 に答える 2

6

あなたが試すことができます:

function mymodule_nodeapi(&$node, $op, $a3 = NULL, $a4 = NULL) {
   switch ($op) {
      case 'insert':
         if ($node->type == 'type_a') {
            $node->field_of_reference[0]['nid'] = 'node reference value';
            node_save($node);
         } 
         break;
   }
}

これにより、ノードに値が追加され、作成後に保存されます。

http://api.drupal.org/api/function/hook_nodeapi

注:これを容易にするためにモジュールを作成する必要があります。ルールモジュールを試すこともできますが、カスタムルールなしであなたが求めることを実行できるかどうかはわかりません。しかし、私は上記の方法がうまくいくことを知っています。

于 2010-09-21T20:41:51.840 に答える
2

プログラミングなしで-「ルール」モジュールを使用し、イベント-ノードの更新、アクション-フィールドをある値に設定します。

于 2010-09-21T21:36:53.050 に答える