2

私はdrupalの初心者です...

<?php print $node->field_date[0]['view']; ?>

カスタム作成された CCK フィールドの値を取得し、上記のように tpl.php ファイルに表示できます...それで問題ありません。

私の質問は、ノード参照フィールドのインフィールドを取得するにはどうすればよいですか? たとえば、イベント コンテンツ タイプがあり、場所のノード参照 (タイトル、アドレス、画像など) を定義しました。以下のコードを記述すると、すべての位置情報が表示されます。

<?php print $node->field_location[0]['view']; ?>

しかし、この場所のコンテンツ タイプから住所フィールドのみを取得する必要があります。以下のようなsthは素晴らしいでしょう:Dですが、機能しません。

<?php print $node->field_location[0]['field_address']['view']; ?>

それでどうやってそれを手に入れることができますか?ありがとうございます!どうもありがとう!

4

2 に答える 2

1

$node->field_location配列の内容を検査/ダンプする必要があります。現在、テストインストールが手元にないため、はっきりとは言えませんが、少なくとも参照されるノードID('nid')がその配列のどこかにあるはずです。これにより、node_load($nid)ノードオブジェクト全体を返す、を実行して、フィールドへのアクセスを提供できます。

(前述のとおり、わかりませんが、フィールド配列にはすでにノードオブジェクト全体が含まれている可能性があるため、明示的にロードする必要がありません。

于 2010-06-03T11:51:59.687 に答える
0

は、コンテンツ タイプ定義の [表示フィールド] セクションで定義$node->field_location[0]['view'];れたノードを返します。これはあなたの利益のために働くかもしれません。それをだますことができます。そのノードにティーザー表示を使用、ニーズに合わせてノードのティーザー表示をカスタマイズします。ちょっとした考え。

それがうまくいかない場合は、ノードを個別にロードする必要があります。を使用$node->field_location[0]['nid'];してノード ID を取得できるため、最終的には次のようになります。

node_load($node->field_location[0]['nid'])->field_address[0]['view']

これがどのように機能するかはわかりません...

于 2010-06-28T09:13:59.987 に答える