Есть виджет «список контента», который выводит последние опубликованные объявления из типа контента «board». Если к объявлению не загружено фото, то он ничего не выводит, т.е. заглушки нет. Если в виджете выводить по 10 объявлений, где в одних есть фото, а в других нет, то выглядит оно криво. Единственный выход поставить заглушку.
ВОПРОС: Как вывести заглушку в виджете «список контента»?
Это где нужно вставить, в каком документе и в каком месте?Вроде нигде не ошибся...
<?php if ($items){ ?> <div class="widget_content_list compact"> <?php foreach($items as $item) { ?> <?php $url = href_to($ctype['name'], $item['slug']) . '.html'; $is_private = $item['is_private'] && $hide_except_title && !$item['user']['is_friend']; $image = (($image_field && !empty($item[$image_field]))) ? $item[$image_field] : "background-image:url('/upload/default/avatar_micro.png')"; if ($is_private) { $image = default_images('private', 'micro'); } $url = ''; } ?> <div class="item"> <?php if ($image) { ?> <div class="image"> <?php if ($url) { ?> <a style="background-image:url('<?php echo html_image_src($item[$image_field], 'micro', true); ?>')" href="<?php echo $url; ?>"></a> <?php } else { ?> <a style="background-image:url('/upload/default/avatar_micro.png')" href="<?php echo $url; ?>"></a> <?php } ?> <?php } else { ?> <div class="imgc" style="background-image:url('upload/<?php echo html_image_src($image, 'micro'); ?>')"></div> <?php } ?> </div> <?php } ?> <div class="info"> <div class="title"> <?php if ($url) { ?> <a href="<?php echo $url; ?>"><?php html($item['title']); ?></a> <?php } else { ?> <?php html($item['title']); ?> <?php } ?> <?php if ($item['is_private']) { ?> <span class="is_private" title="<?php html(LANG_PRIVACY_PRIVATE_HINT); ?>"></span> <?php } ?> </div> </div> </div> <?php } ?> </div> <?php } ?>
Нужно будет еще в css дописать несколько строк, чтобы выводилось нормально:
.compact .image a, .compact .imgc{ display:block; width:32px; height:32px; float:left; }