it-swarm-ja.com

画像フィールドをレンダリングする方法

Drupal 7画像フィールドをレンダリングし、フィールドが空の場合にデフォルト画像を表示する正しい方法は何ですか?

field_get_itemsを使用すると、フィールドが空の場合はFALSEが返されます。

7
mimrock

ベストプラクティスはおそらく field_view_field() を使用することだと思います。

$view = field_view_field('node', $node, 'field_image');
print render($view);

これにより、エンティティビューにアタッチされているかのようにフィールドがレンダリングされ、何も使用できない場合はデフォルトの画像が提供されます。

15
Clive

次のような画像スタイル(D6の画像キャッシュプリセット)も使用できます。

render(field_view_field('user', $user, 'field_avatar', array('settings' => array('image_style' => 'avatar'))));
10
Paul Hudson