Как сделать так, чтобы товары в информере выводились как в интернет-магазине?

голоса: 0

Добрый день!

Помогите, пожалуйста, - не могу понять почему у меня товары в информере, который распологается на странице модуля index, не выводятся по порядку, как в интернет магазине. Ниже принт скрин, где понятно, что имеется в виду.

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

 

| Автор: | Категория: Интернет-магазин

Ответов: 1

голоса: 0

Проблема в связи с тем, что под товары создаются пустые ячейки в таблице, вот такие:

<td class="infTd" width="25%"></td>

и неправильно копировать код вида товаров в шаблон информера так как в информере могут поддерживаться не все операторы которые работают в шаблоне вида материалов.

| Автор:

Да, данные поля, есть - но откуда они появляются - не могу понять? Насколько я понимаю - это системные какие то пустые ячейки?

код информера ( информер товаров со скидкой) вот (все лишнее убрано, условные операторы все работают, но проблема сохряняется):

<?if($PRICE_OLD$)?>

<div class="g_img">
<img alt="$NAME$" src="<?if($THUMB$)?>$THUMB$<?else?>/img/nophoto.png<?endif?>">
 <?if($PRICE_OLD$)?><span class="gsale">sale</span><?endif?>
</div>
<div class="g_info">
 <div class="g_name"><a href="$ENTRY_URL$">$NAME$</a></div>
 <div class="g_price_rate oh">
 <div class="g_price"><?if($PRICE$)?>$PRICE$<?else?><?endif?> <?if($PRICE_OLD$)?><s>$PRICE_OLD$</s><?endif?></div>
 </div>
</div>
<?endif?>

Алексей Смирновв,
Увы причину вот так с виду выявить нельзя, нужно смотреть код шаблона страницы на которую вы разместили эти информеры.

Да шаблон тоже вроде бы стандартный, просто на самом деле не понятно почему создается таблица и пустые ячейки - при том что ни в коде шаблона страницы, ни в коде информера подобного нет.

<html>
 <head>
 <meta charset="utf-8">
 <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
 
<title>$MODULE_NAME$</title>
<meta name="description" content="$MODULE_NAME$"/>
<meta name="keywords" content="$MODULE_NAME$"/>
 <link type="text/css" rel="StyleSheet" href="/_st/my.css" />
 <link type="text/css" rel="StyleSheet" href="/_st/shop.css" />
 <link href='https://fonts.googleapis.com/css?family=PT+Sans+Caption:400,700&subset=latin,cyrillic' rel='stylesheet' type='text/css'>
 <link rel="stylesheet" href="/css/font-awesome.min.css">
 <link rel="stylesheet" href="/css/owl.carousel.css">
 <link rel="stylesheet" href="/css/general.css">
 <?$SEO_CANONICAL$?>
</head>
 <body id="body">
 <div id="loader"></div>
 <div id="wrapper">

 $GLOBAL_AHEADER$

 <!-- хлебные крошки -->
 <div class="path cnt clr">
 <i class="fa fa-home"></i>
 <a href="/">Главная страница</a> <i class="fa fa-angle-right"></i>
 <?if($MODULE_NAME$)?>
 $MODULE_NAME$
 <?else?>
 $TITLE_BAR$
 <?endif?>
 <?if($SEARCH_QUERY$)?>
 $SEARCH_QUERY$
 <?endif?>
 </div>

 <!-- основная часть -->
 <div id="middle">
 <div class="cnt clr">
 <!-- <middle> -->
 <div id="content">
 
 <!-- <body> -->
 <div id="goods_cont">
$MYINF_6$
 </div>
 <!-- </body> -->

 </div>

 <!-- сайдбар -->
 <aside id="sidebar">

 $GLOBAL_CATEGORIES$

 $GLOBAL_BANNER$

 $GLOBAL_CLEFTER$

 </aside>

 <!-- </middle> -->
 </div>
 </div>

 <!-- нижняя часть -->
 $GLOBAL_BFOOTER$

 </div>


 <!-- qv -->
 <div id="qv_container"><div id="qv_overlay"></div><div id="qv_window"></div><span id="qv_close" class="fa fa-close" title="Закрыть"></span></div>
 <!-- /qv -->

 <script src="/js/plugins.js"></script>
 <script src="/js/scripts.js"></script>
 </body>
</html>

Алексей Смирновв,
Так же предоставьте полный код шаблона информера и скриншот настроек информера.

Полный код информера на данный момент:

<?if($PRICE_OLD$)?>

<div class="g_img">
<img alt="$NAME$" src="<?if($THUMB$)?>$THUMB$<?else?>/img/nophoto.png<?endif?>">
 <?if($PRICE_OLD$)?><span class="gsale">sale</span><?endif?>
</div>
<div class="g_info">
 <div class="g_name"><a href="$ENTRY_URL$">$NAME$</a></div>
 <div class="g_price_rate oh">
 <div class="g_price"><?if($PRICE$)?>$PRICE$<?else?><?endif?> <?if($PRICE_OLD$)?><s>$PRICE_OLD$</s><?endif?></div>
 </div>
</div>
<?endif?>

 

Скриншот настроек информера здесь (настройки пробовал менять - различные типы сортировок, кол-во столбвцов - результат тот же):

Алексей Смирновв,
Выделил красным в вашем сообщении выше, удалите данный код, вероятно проблема из-за него.
Да, это помогло, но как в данном случае тогда можно отсортировать товары со скидкой?
Алексей Смирновв,

Вместо красного что я выделял выше, завернуть в подобное условие:

<?if($IS_IN_DISCOUNT$)?><?endif?>

$IS_IN_DISCOUNT$ - флаг, указывающий, входит ли товар в систему скидок

А если скидка прописывается индивидуально к каждому товару (в карточке каждого товара)? насколько я понимаю переменная <?if($IS_IN_DISCOUNT$)?><?endif?> может быть использвана только в случае применения скидок при помощи матриц?
...