AlexanderKi Опубликовано 11 августа, 2015 Жалоба Поделиться Опубликовано 11 августа, 2015 Проблемка такая, есть много категорий.Каждая категория имеет список своих брендов.Но у меня выводятся в каждой категории все имеющиеся бренды. Это очень неудобно,это как то решается? Цитата Ссылка на сообщение Поделиться на другие сайты
mishanya Опубликовано 11 августа, 2015 Жалоба Поделиться Опубликовано 11 августа, 2015 (изменено) Проблемка такая, есть много категорий. Каждая категория имеет список своих брендов. Но у меня выводятся в каждой категории все имеющиеся бренды. Это очень неудобно,это как то решается? такого быть не должно, бренды беруться по категориям, и в том случае если нет категории, выбираются все бренды.проверьте есть ли у вас такие строки в view/ProductsView.php // Выбираем бренды, они нужны нам в шаблоне if(!empty($category)) { $brands = $this->brands->get_brands(array('category_id'=>$category->children, 'visible'=>1)); $category->brands = $brands; } и передается ли массив айди $category->children в функцию выборки брендов Изменено 11 августа, 2015 пользователем mishanya Цитата Ссылка на сообщение Поделиться на другие сайты
AlexanderKi Опубликовано 11 августа, 2015 Автор Жалоба Поделиться Опубликовано 11 августа, 2015 такого быть не должно, бренды беруться по категориям, и в том случае если нет категории, выбираются все бренды.проверьте есть ли у вас такие строки в view/ProductsView.php // Выбираем бренды, они нужны нам в шаблоне if(!empty($category)) { $brands = $this->brands->get_brands(array('category_id'=>$category->children, 'visible'=>1)); $category->brands = $brands; } и передается ли массив айди $category->children в функцию выборки брендовв view/ProductsView.php все есть, а про последнии строки, это там же смотреть? Цитата Ссылка на сообщение Поделиться на другие сайты
mishanya Опубликовано 11 августа, 2015 Жалоба Поделиться Опубликовано 11 августа, 2015 в view/ProductsView.php все есть, а про последнии строки, это там же смотреть? $category->children передается в 4й строке кода выше, если все есть, посмотрите в шаблоне, возможно у вас в products.tpl идет цикл не по $category->brands а просто по $brands Цитата Ссылка на сообщение Поделиться на другие сайты
AlexanderKi Опубликовано 11 августа, 2015 Автор Жалоба Поделиться Опубликовано 11 августа, 2015 $category->children передается в 4й строке кода выше, если все есть, посмотрите в шаблоне, возможно у вас в products.tpl идет цикл не по $category->brands а просто по $brands {* Список товаров *} {* Канонический адрес страницы *} {if $category && $brand} {$canonical="/catalog/{$category->url}/{$brand->url}" scope=parent} {elseif $category} {$canonical="/catalog/{$category->url}" scope=parent} {elseif $brand} {$canonical="/brands/{$brand->url}" scope=parent} {elseif $keyword} {$canonical="/products?keyword={$keyword|escape}" scope=parent} {else} {$canonical="/products" scope=parent} {/if} <!-- Titlebar --> <section class="titlebar"> <div class="container"> <div class="sixteen columns"> <h2>Каталог</h2> <nav id="breadcrumbs"> <ul> <li><a href="/">Главная</a></li> {if $category} {foreach from=$category->path item=cat} <li><a href="catalog/{$cat->url}">{$cat->name|escape}</a></li> {/foreach} {if $brand} <li><a href="catalog/{$cat->url}/{$brand->url}">{$brand->name|escape}</a></li> {/if} {elseif $brand} <li><a href="brands/{$brand->url}">{$brand->name|escape}</a></li> {elseif $keyword} <li>Поиск</li> {else} <li>Все товары</li> {/if} </ul> </nav> </div> </div> </section> <div class="container"> <!-- Sidebar --> <div class="four columns"> {if $category->subcategories} <div class="widget margin-top-0"> <h3 class="headline">Категория</h3><span class="line"></span><div class="clearfix"></div> <ul class="filter-widget"> {foreach $category->subcategories as $c} {if $c->visible} <li><a href="catalog/{$c->url}" data-category="{$c->id}">{$c->name}</a></li> {/if} {/foreach} </ul> <div class="clearfix"></div> </div> {/if} <div class="widget {if !$category->subcategories}margin-top-0{/if}"> <h3 class="headline">Сортировка</h3><span class="line"></span><div class="clearfix"></div> <ul class="filter-widget"> <li>{if $sort=='position'}<span>По умолчанию</span>{else}<a href="{url sort=position page=null}">По умолчанию</a>{/if}</li> <li>{if $sort=='price'}<span>По цене</span>{else}<a href="{url sort=price page=null}">По цене</a>{/if}</li> <li>{if $sort=='name'}<span>По названию</span>{else}<a href="{url sort=name page=null}">По названию</a>{/if}</li> </ul> <div class="clearfix"></div> </div> {if $category->brands} <div class="widget{if ($products|count < 2) && !$category->subcategories} margin-top-0{/if}"> <h3 class="headline">Бренд</h3><span class="line"></span><div class="clearfix"></div> <ul class="filter-widget"> <li> {if !$brand->id} <span>Все бренды</span> {else} <a href="catalog/{$category->url}">Все бренды</a> {/if} </li> {foreach name=brands item=b from=$category->brands} <li> {if $b->id == $brand->id} <span>{$b->name|escape}</span> {else} <a data-brand="{$b->id}" href="catalog/{$category->url}/{$b->url}" >{$b->name|escape}</a> {/if} <li> {/foreach} </ul> <div class="clearfix"></div> </div> {/if} {if $features} {foreach $features as $key=>$f} <div class="widget{if !$category->subcategories && !$category->brands && $f@first && ($products|count < 2)} margin-top-0{/if}"> <h3 class="headline" data-feature="{$f->id}">{$f->name}</h3><span class="line"></span><div class="clearfix"></div> <ul class="filter-widget"> <li> {if !$smarty.get.$key} <span>Все</span> {else} <a href="{url params=[$f->id=>null, page=>null]}">Все</a> {/if} </li> {foreach $f->options as $o} <li> {if $smarty.get.$key == $o->value} <span>{$o->value|escape}</span> {else} <a href="{url params=[$f->id=>$o->value, page=>null]}">{$o->value|escape}</a> {/if} </li> {/foreach} </ul> <div class="clearfix"></div> </div> {/foreach} {/if} <!-- Price slider --> {if $minprice != 0 && $minprice != 0} <div class="widget"> <h3 class="headline">Цена</h3><span class="line"></span><div class="clearfix"></div> <input type="hidden" value="{$minprice|convert|regex_replace:'/[ ]/':''|regex_replace:'/[,]/':'.'|floor}" id="f_minPrice"> <input type="hidden" value="{$maxprice|convert|regex_replace:'/[ ]/':''|regex_replace:'/[,]/':'.'|ceil}" id="f_maxPrice"> <input type="hidden" value="{$current_minprice|convert|regex_replace:'/[ ]/':''|regex_replace:'/[,]/':'.'|floor}" id="f_currentMinPrice"> <input type="hidden" value="{$current_maxprice|convert|regex_replace:'/[ ]/':''|regex_replace:'/[,]/':'.'|ceil}" id="f_currentMaxPrice"> {if $currency->code == 'RUR'} <input type="hidden" value="true" id="f_currencyBefore"> <input type="hidden" value="100" id="f_priceStep"> <input type="hidden" value=" Руб." id="f_currencySymbol"> {else} <input type="hidden" value="false" id="f_currencyBefore"> <input type="hidden" value="10" id="f_priceStep"> <input type="hidden" value="R" id="f_currencySymbol"> {/if} <form method="post" id="price-range"> <input type="hidden" name="min_price" id="min_price"/> <input type="hidden" name="max_price" id="max_price"/> <input type="hidden" name="rate_from" id="rate_from" value="{$currency->rate_from}"/> <input type="hidden" name="rate_to" id="rate_to" value="{$currency->rate_to}"/> <div class="padding-range"> <div id="slider-range"></div> </div> <span class="price_text" id="min_price_text"></span> <span class="price_text max" id="max_price_text"></span> <div class="clearfix"></div> <div class="buttons_box"> <a href="catalog/{$category->url}" class="button gray">Сбросить</a> <input type="submit" class="button color" value="Применить"> </div> </form> <div class="clearfix"></div> </div> {/if} <div class="margin-top-30"></div> </div> <div class="twelve columns"> <h3 class="headline category" data-feature="{$f->id}"> {if $keyword} Поиск {$keyword|escape} {elseif $page} {$page->name|escape} {else} {$category->name|escape} {$brand->name|escape} {$keyword|escape} {/if} </h3> <span class="line category"></span> <div class="clearfix"></div> </div> <!-- Products --> <div class="twelve columns products"> {if $products} {* Описание страницы (если задана) *} {if $page->body} <div class="category-description-box"> {$page->body} </div> {/if} {* Описание категории *} {if $current_page_num==1 && $category->description} <div class="category-description-box"> {$category->description} </div> {/if} {* Описание бренда *} {if $current_page_num==1 && $brand->description} <div class="category-description-box"> {$brand->description} </div> {/if} {foreach $products as $product} <div class="four shop columns"> {include file='product_item.tpl'} </div> {if ($product@iteration is div by 3) || $product@last}<div class="clearfix x3"></div>{/if} {if ($product@iteration is div by 2) || $product@last}<div class="clearfix x2"></div>{/if} {/foreach} <!-- Pagination --> <div class="pagination-container"> {include file='pagination.tpl'} </div> {else} <div class="notification notice category"> <p>Товары не найдены.</p> </div> {/if} </div> </div> <div class="margin-top-15"></div> Все на своих местах, еще где то может быть загвоздка? Цитата Ссылка на сообщение Поделиться на другие сайты
Kors Опубликовано 11 августа, 2015 Жалоба Поделиться Опубликовано 11 августа, 2015 Загвоздка может быть в том, что Вы и mishanya говорите о разном. Стандартно в Simpla на странице категории есть ДВА списка брендов: 1. Один формируется в index.tpl, выводится на всех страницах и показывает все бренды. 2. Другой формируется в products.tpl, выводится на страницах категорий в фильтре и показывает бренды, имеющиеся у товаров категории. Смотрите, например, на демо сайте http://demo.simplacms.ru/catalog/mobilnye-telefony Там два РАЗНЫХ списка брендов видны четко... Если б Вы не стеснялись и дали свой URL, возможно, вопрос бы решился быстрее. Гадание на кофейной гуще - не лучший способ... Цитата Ссылка на сообщение Поделиться на другие сайты
AlexanderKi Опубликовано 11 августа, 2015 Автор Жалоба Поделиться Опубликовано 11 августа, 2015 Загвоздка может быть в том, что Вы и mishanya говорите о разном. Стандартно в Simpla на странице категории есть ДВА списка брендов:1. Один формируется в index.tpl, выводится на всех страницах и показывает все бренды.2. Другой формируется в products.tpl, выводится на страницах категорий в фильтре и показывает бренды, имеющиеся у товаров категории. Смотрите, например, на демо сайтеhttp://demo.simplacms.ru/catalog/mobilnye-telefonyТам два РАЗНЫХ списка брендов видны четко... Если б Вы не стеснялись и дали свой URL, возможно, вопрос бы решился быстрее. Гадание на кофейной гуще - не лучший способ...http://shop.almaztec.ru/catalog/komplekty-sverlilnyh-ustanovok-При любом расекладе выводятся все бренды, но так не должно быть. Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.