[Решено] Скрыть дефолтное изображение при полном просмотре

Главные вкладки

Аватар пользователя WhatTheFuck WhatTheFuck 9 августа 2011 в 18:37

Через field_node_gallery_image организовал вывод изображений. Настроил изображение по умолчанию, в случае если пользователь не загрузит картинки. Проблема в том, что дефолтное изображение выводится в полном просмотре ноды. А это мне не нужно...

В тизере все выводится, но как сделать чтобы дефолтная картинка не выводилась в полной ноде?

Комментарии

Аватар пользователя Cyber Cyber 9 августа 2011 в 23:11

не знаю, что там у вас за модуль, но недавно решил подобную задачу на вьюхе путём установки дефолтной фоновой картинки в css и при наличии изображения через пресет прямо в атрибут style в инлайне. т.о. инлайн тупо оверрайдит ксс, если аттриба установлена

Аватар пользователя WhatTheFuck WhatTheFuck 9 августа 2011 в 23:19

Я ничего не понял из того что вы написали. Можно более простым языком как вы решили эту проблему?

Я пытался править шаблон ноды, через css тоже пробовал но не получилось.

Вот типо того я писал в шаблон ноды:

      <div class="field field-type-filefield field-field-node-gallery-image">
      <div class="field-item odd">
         
          <a rel="lightbox[field_node_gallery_image][xffdgdgfgflkjlkj]"
            href="http://localhost/drupal-6.20-1/sites/default/files/imagecache/node-galle...
            img src="http://localhost/drupal-6.20-1/sites/default/files/imagecache/scale2/ima...
            style="display: none">  
          </a>                        

      </div>
      </div>

Аватар пользователя Cyber Cyber 9 августа 2011 в 23:33
<?phpif ( !isset($field_field_bla-bla-image[0][pash][tbidox][tram]) ) {
 print 'default image';
}
else {
 print $field_field_bla-bla-image[0][pash][tbidox][tram][uri];
}?>

чёта типо того, если кодом. а что с настройками там же вроде можно задефайнить? Собсно типа если нету то нифига не надо делать. иначе показ норм картинки. настройки поковыряйте иль шаблон перепишите

Аватар пользователя WhatTheFuck WhatTheFuck 11 августа 2011 в 20:53

Обошел проблему путем создания второго поля image с дефолтным изображением, скрыл через css это поле в полной ноде и шаблоне создания ноды. В 1 поле наоборот убрал возможность загрузки дефолтного изображения. Создал пресет для обработки дефолтного изображения размерами меньше чем пресет для 1 поля. Через Views на странице вывода списка нод, наложил одно поле на другое, таким образом чтобы первое поле перекрывало второе. Если пользователь загрузит изображения то в тизере оно наложится на дефолтное изображение, а если ничего не загрузит то отображается дефолтная картинка... можно сказать избавился от проблемы.

Если знаете вариант проще, то напишите.

Аватар пользователя Cyber Cyber 11 августа 2011 в 20:54

вариант проще был выше. нужно было переписать шаблон и тянуть src картинки. Если картинка есть, то выводим инлайновый стайл с бэкграундом, если нет то картинка на бэкграунд берётся из css темы. Чтобы эта херня индексировалась можно дополнительно показывать картинку с display none;