0

如何使用 drupal_set_message 获取有关节点的信息,即其内容类型及其所有字段等?另外,该语句中的 ['und'][0]['value'] 是什么意思?drupal_set_message($node->field_product_stock['und'][0]['value']);

4

2 回答 2

2

drupal_set_message将设置一条反映已执行操作状态的消息。如果调用该函数时不带参数,则该函数返回所有设置的消息而不清除它们。

参数

$message:消息应以大写字母开头,并始终以句点“.”结尾。

$type: 消息的类型。以下值之一是可能的:

'status'
'warning'
'error'

$repeat:如果这是 FALSE 并且消息已经设置,那么消息将不会重复。

根据你的代码

$node->field_product_stock['und'][0]['value']应该包含您要显示的消息。

于 2013-01-22T05:36:09.210 回答
1

1/ 如 Dasun 所写drupal_set_message,将显示您作为$message参数传递给用户的字符串。

如果要输出整个节点,例如调试,最好使用devel模块及其辅助函数。dpm会将节点漂亮地打印到消息区域,即

dpm( $node );

有关更多信息,请参阅http://api.drupal.org/api/devel/devel.module/function/dpm/7

2/ 'und' 与 D7 中的多语言支持有关。它是“未定义”的缩写。由于一个字段可以有多个值,它包含一个数组,并且该数组可以包含一个具有多个键的数组。字段中使用的默认键是“值”。

因此,如果您有一个包含西班牙语值和键“target_id”的多值字段,并且您希望获得第二个值,您可以这样做:

[ 'es' ][ 1 ][ 'target_id' ]

于 2013-01-22T08:27:22.927 回答