[英]How to set custom field value for node in Drupal 7?
我正在尝试使用下一代码从外部脚本添加新节点:
define('DRUPAL_ROOT', getcwd());
include_once './includes/bootstrap.inc';
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
$node = new stdClass();
$node->title = "Your node title";
$node->body = "The body text of your node.";
$node->type = 'rasskazi';
$node->created = time();
$node->changed = $node->created;
$node->status = 1; // Published?
$node->promote = 0; // Display on front page?
$node->sticky = 0; // Display top of page?
$node->format = 1; // Filtered HTML?
$node->uid = 1; // Content owner uid (author)?
$node->language = 'en';
node_submit($node);
node_save($node);
但是如何设置自定义字段值(例如'sup_id'整数)?
像这样:
$node->field_sup_id[LANGUAGE_NONE] = array(
0 => array('value' => $the_id)
);
如果您的字段具有多个基数,则可以添加以下额外项:
$node->field_sup_id[LANGUAGE_NONE] = array(
0 => array('value' => $the_id),
1 => array('value' => $other_id)
);
您可以使用数组的language
元素来定义此特定字段值所属的语言:
$lang = $node->language; // Or 'en', 'fr', etc.
$node->field_sup_id[$lang] = array(
0 => array('value' => $the_id),
1 => array('value' => $other_id)
);
在调用node_save()
之前添加这些,并在调用时添加/更新字段内容。
克莱夫是现货。 你也可以使用数组速记语法,这是更好的符号恕我直言......例如
$node->field_sup_id[LANGUAGE_NONE][0]['value'] = "2499";
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.