Всем известно,что для того,чтобы вывести картинку из определённого пресета,нужно в node.tpl.php вставить такое
<?php print theme('imagecache', 'preset_name', $field_image_cache[0]['filepath']); ?>
HTML получится такой:
<img scr="http://domain.com/path-to-image/image.jpg" class="imagecache..."/>
Мне же надо (чтобы вставить в фид) вывести ТОЛЬКО полный УРЛ к картинке определённого пресета,например
http://domain.com/path-to-image/image.jpg
)
Как это сделать?
Комментарии
Не понятно....
и
http://domain.com/path-to-image/image.jpg
не одно ли это и то-же ??/
««
<?php print theme('imagecache_url', 'preset_name', $field_image_cache[0]['filepath']); ?>
»»Нафик вызывать функцию theme когда этот урл уже есть в переменной $field_image_cache[0]['filepath'] ?
BOOZ:
Задача просто отпечатать ссылку на картинку,без других тегов и стилей
Обухов Никита: а пресет?
gumk: вообще не работает
base_path().file_directory_path().'/imagecache/<preset_name>/'.$field_image_cache[0]['filename'];
Если картинки по умолчанию грузятся не в корень files, после укажите путь к картинке по отношению к files.
Например, картинки грузятся в sites/default/files/thumbs:
base_path().file_directory_path().'/imagecache/<preset_name>/thumbs/'.$field_image_cache[0]['filename'];
ozoned@drupal.org:
Вот-вот,уже ближе. Я тоже с base_path()игрался,но бестолку
Ваш код:
<?php print base_path().file_directory_path().'/imagecache/product_list/'.$field_image_cache[0]['filename']; ?>
Выдаёт такое:
/files/imagecache/product_list/
Немного не дотягивает до полноценного урла
Не заметил что вопрос по Drupal 5. В админке 'file_directory_path' задан? Попробуйте тогда вот так, извратная конструкция конечно, но все-же.
Для имени файла посмотрите что есть в $field_image_cache[0] — с imagecache на 5-ке я честно говоря не работал.
а сам модуль imagecache трудно посмотреть?
<?php
return imagecache_create_path($presetname, $field_image_cache[0]['filepath']);
?>
beerman: Мне для 5-ки.
Я посмотрел в модуль,вот функция темизации:
<?phpfunction theme_imagecache($namespace, $path, $alt = '', $title = '', $attributes = null) {
// check is_null so people can intentionally pass an empty array of attributes to override
// the defaults completely... if
if (is_null($attributes)) {
$attributes['class'] = 'imagecache imagecache-'. $namespace;
}
$attributes = drupal_attributes($attributes);
$imagecache_url = imagecache_create_url($namespace, $path);
return '<img src="'. $imagecache_url .'" alt="'. check_plain($alt) .'" title="'. check_plain($title) .'" '. $attributes .' />';
}?>
Кто нибудь знает,как вычленить чистый URL?
трудно углядеть?
Так,ладно,я поднапряг немного мозг и вышло так:
<?php $imagePath = $node->field_image_cache['0']['filepath']; ?>
http://site.com/files/imagecache/<название пресета>/<?php print $imagePath; ?>
Имеем чистый абсолютный урл картинки пресета
2beerman: ты видимо у volocuga забанен и он твоих сообщений не видит ))