it-roy-ru.com

Drupal 7 Получить путь к полю изображения

Я хотел бы получить путь изображения поля. Я нахожусь в узле, и мне нужен URL-адрес изображения, чтобы поместить его в качестве фонового изображения во встроенном CSS ... Я не могу найти решение. Вы можете мне помочь?

20
gleenk

Чтобы получить только путь к изображению из его URI:

file_create_url ($ node-> field_image [ 'унд'] [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

50
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

19
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 module. Позволяет изменить формат поля, чтобы получить только URL:

Drupal field settings

Бонус: он работает и с Views:

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