Несуществующие картинки от imagecache

16 января 2008 в 9:27
Аватар пользователя Zw Zw 0 7

Использую модули imagecache и imagefield. Долго с ними боролся, и в результате удалось все настроить: теперь пользователь вставляет картинку в свою заметку, та уменьшается/обрезается как надо, и в ноде показывается в полный размер, а в тизере — превью.
НО такая вот беда: если в ноде картинка не вставлена, то на месте превью все равно появляется пустая ссылка img src="http://сайт.ru/files/imagecache/imagepre" alt="" title=""
Разные браузеры показывают это дело по-разному. Мозилла не показывает, ИЕ квадратик с крестиком, Сафари квадратик с вопросом. В общем непорядок.
Может к-нб подсказать, как с этим бороться? (Либо ссылку не выводить, либо подставлять какую-нб картинку по умолчанию.)

Комментарии

Смотря как вы выводите картинки:
Если Средствами ССК www.site.ru/admin/content/types/тип_данных/display то должно само все таботать
Если сами выводите, в файле node.tpl.php, то поставьте условие или выводитев цикле
<?php

?>

16 января 2008 в 15:19
Аватар пользователя Zw Zw 0

Я уже сам не понимаю, как я это сделал.
Значит так: в типе материала добавил поле "фото", в котором настроил правила обработки картинок для тизера и боди.
Вот сайт — http://nocm.ru — если как-то это упростит.
---------
Темизировать поле смотреть здесь /sites/all/modules/cck/theme/README.txt ?

16 января 2008 в 18:03

аналогичная беда у меня на сайте.
делается при помоще imagecash и imagefield.
в итоге получается поле для добавления картинки, которое добавляешь в любой тип материала. если через это поле не вставить картинку (те не использовать его и оставить пустым), получается пустая ссылка.

19 января 2008 в 17:44

таже беда, только когда я вывожу список последних нод (title + картинка) в блоке, в нодах где нет картинки пустая ссылка!
помогите подробнее разобраться

6 февраля 2008 в 1:21

Решение :
В imagecache.module надо посавить проверку на наличие картинки:if($path){...
function theme_imagecache($namespace, $path, $alt = '', $title = '', $attributes = NULL) {
if($path){
$attributes = drupal_attributes($attributes);
return ''. check_plain($alt) .'';
}else{
return false;
}
}
?>

19 февраля 2008 в 19:00

Dimm wrote:
Решение :
В imagecache.module надо посавить проверку на наличие картинки:if($path){...
function theme_imagecache($namespace, $path, $alt = '', $title = '', $attributes = NULL) {
if($path){
$attributes = drupal_attributes($attributes);
return ''. check_plain($alt) .'';
}else{
return false;
}
}
?>

вы автору не предлагали это дополнение для внесения в будущие версии imagecache?

1 ноября 2008 в 17:32