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 回答