web-dev-qa-db-ja.com

Drupal 7画像フィールドのパスを取得

フィールドの画像パスを取得したいのですが。私はノードにいて、インラインCSSで背景画像として配置するために画像のURLが必要です。解決策が見つかりません。手伝って頂けますか?

21
gleenk

URIから画像のパスのみを取得するには:

file_create_url($ node-> field_image ['und'] [0] ['uri']);

File_create_url()の詳細については、こちらをご覧ください: http://api.drupal.org/api/drupal/includes%21file.inc/function/file_create_url/7

URIから画像スタイルを使用して作成された画像のパスを取得するには、次のようにします。

image_style_url($ style、$ node-> field_image ['und'] [0] ['uri']);

Image_style_url()の詳細については、こちらをご覧ください: http://api.drupal.org/api/drupal/modules!image!image.module/function/image_style_url/7

52
MunkyOnline

上記の解決策はどれも正しくありません。彼らはDrupal標準に従っていない。

// field_video_image is the name of the image field

// using field_get_items() you can get the field values (respecting multilingual setup)
$field_video_image = field_get_items('node', $node, 'field_video_image');

// after you have the values, you can get the image URL (you can use foreach here)
$image_url = file_create_url($field_video_image[0]['uri']);

詳細はこちら: http://www.computerminds.co.uk/articles/rendering-drupal-7-fields-right-way

21
42droids Ltd

私は時々これを使います:

$node = node_load($nid);
$img_url = $node->field_userimage['und'][0]['uri'];

<img src="<?php print image_style_url($style, $img_url) ?>" />
5
Kristoffer

Image URL Formatter モジュールを使用することもできます。 URLのみを取得するためにフィールド形式を変更できます。

Drupal field settings

おまけ:ビューでも機能します:

enter image description here

1
Jsalinas

画像スタイルのURLを取得するには:

$field = field_get_items('node', $node, 'field_image');
$image_url = image_style_url('landingpage_slider', $field[0]['uri']);
0
Remownz