3

我有一个先前的问题,结合了关于这个主题的两个问题......但我想我解释得有点含糊......故事太多......所以我一次只问一个问题:)

我正在尝试使用规则创建一个节点。规则需要创建一个新的“产品”节点并将其显示给用户,以便他们可以填写一些详细信息字段然后保存。

我正在尝试使用规则-> 创建新实体来做到这一点。作为“实体类型”,我选择“节点”,作为“内容类型”,我选择我的产品内容类型。然后我还需要填写一个标题。哪里出错了。我试图将每种类型的数据或字符串放在 Title 的 Value 字段中,Rules 接受它并保存规则。但是每次规则创建节点失败时都会显示以下错误消息:

Unable to create entity node": Invalid data value given. Be sure it matches the required data type and format.

如何有效地创建某种内容类型的新节点并将其呈现给用户以进一步完成,所有这些都带有规则?

4

2 回答 2

6

你可以用代码做到这一点:

global $user;
$node = new stdClass;
$node->type = 'type';
$node->title = 'A title';
$node->uid = $user->uid;
node_object_prepare($node);
node_save($node);

drupal_goto("node/$node->nid");

希望有帮助

于 2011-10-18T07:46:24.443 回答
0

这里有两个教程,其中有很多关于如何在代码中创建 Drupal 7 节点的评论:12

The code can be added into the hook_node_insert or hook_node_update hoooks so that nodes can also be added while saving other nodes.

于 2013-12-29T11:40:09.987 回答