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」を持つ複数値フィールドがあり、2 番目の値を取得したい場合は、次のようにします。

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

于 2013-01-22T08:27:22.927 に答える