Astrei Posted June 25, 2013 Share Posted June 25, 2013 Подскажите, создал допустим две категории. Товары и услуги. Хочу, чтобы в блоке категории не отображалась вначале название категории Товары, а только отображались подкатегории. Если ставлю не показывать категорию, то автоматом не показываются и подкатегории. А поднять подкатегории вверх не могу, тогда в горизонтальном меню не получается сделать на все товары один выпадающий пункт. Link to comment Share on other sites More sharing options...
Dzianis Yurevich Posted June 28, 2013 Share Posted June 28, 2013 Если на странице категории есть субкатегории, то не отображать продукты, а только субкатегории? я так понял? Если да, то шаблон category.tpl должен содержать вот этот код: {include file="$tpl_dir./breadcrumb.tpl"} {include file="$tpl_dir./errors.tpl"} {if isset($category)} {if $category->id AND $category->active} <h1> {strip} {$category->name|escape:'htmlall':'UTF-8'} {if isset($categoryNameComplement)} {$categoryNameComplement|escape:'htmlall':'UTF-8'} {/if} {/strip} </h1> <div class="resumecat category-product-count"> {include file="$tpl_dir./category-count.tpl"} </div> {if $scenes || $category->description || $category->id_image} <div class="content_scene_cat"> {if $scenes} <!-- Scenes --> {include file="$tpl_dir./scenes.tpl" scenes=$scenes} {else} <!-- Category image --> {if $category->id_image} <div class="align_center"> <img src="{$link->getCatImageLink($category->link_rewrite, $category->id_image, 'category_default')}" alt="{$category->name|escape:'htmlall':'UTF-8'}" title="{$category->name|escape:'htmlall':'UTF-8'}" id="categoryImage" width="{$categorySize.width}" height="{$categorySize.height}" /> </div> {/if} {/if} {if $category->description} <div class="cat_desc"> {if strlen($category->description) > 120} <p id="category_description_short">{$category->description|truncate:120}</p> <p id="category_description_full" style="display:none">{$category->description}</p> <a href="#" onclick="$('#category_description_short').hide(); $('#category_description_full').show(); $(this).hide(); return false;" class="lnk_more">{l s='More'}</a> {else} <p>{$category->description}</p> {/if} </div> {/if} </div> {/if} {if isset($subcategories)} <!-- Subcategories --> <div id="subcategories"> <h3>{l s='Subcategories'}</h3> <ul class="inline_list"> {foreach from=$subcategories item=subcategory} <li class="clearfix"> <a href="{$link->getCategoryLink($subcategory.id_category, $subcategory.link_rewrite)|escape:'htmlall':'UTF-8'}" title="{$subcategory.name|escape:'htmlall':'UTF-8'}" class="img"> {if $subcategory.id_image} <img src="{$link->getCatImageLink($subcategory.link_rewrite, $subcategory.id_image, 'medium_default')}" alt="" width="{$mediumSize.width}" height="{$mediumSize.height}" /> {else} <img src="{$img_cat_dir}default-medium_default.jpg" alt="" width="{$mediumSize.width}" height="{$mediumSize.height}" /> {/if} </a> <a href="{$link->getCategoryLink($subcategory.id_category, $subcategory.link_rewrite)|escape:'htmlall':'UTF-8'}" class="cat_name">{$subcategory.name|escape:'htmlall':'UTF-8'}</a> {if $subcategory.description} <p class="cat_desc">{$subcategory.description}</p> {/if} </li> {/foreach} </ul> <br class="clear"/> </div> {else} {if $products} <div class="content_sortPagiBar"> {include file="$tpl_dir./pagination.tpl"} <div class="sortPagiBar clearfix"> {include file="./product-sort.tpl"} {include file="./product-compare.tpl"} {include file="./nbr-product-page.tpl"} </div> </div> {include file="./product-list.tpl" products=$products} <div class="content_sortPagiBar"> <div class="sortPagiBar clearfix"> {include file="./product-sort.tpl"} {include file="./product-compare.tpl"} {include file="./nbr-product-page.tpl"} </div> {include file="./pagination.tpl"} </div> {/if} {/if} {elseif $category->id} <p class="warning">{l s='This category is currently unavailable.'}</p> {/if} {/if} Link to comment Share on other sites More sharing options...
Dzianis Yurevich Posted June 28, 2013 Share Posted June 28, 2013 А если не выводить указанные категории в модуле "Categories block", то в шаблоне modules/blockcategories/category-tree-branch.tpl прописать дополнительное условие: <li {if isset($last) && $last == 'true'}class="last"{/if}> <a href="{$node.link|escape:'htmlall':'UTF-8'}" {if isset($currentCategoryId) && $node.id == $currentCategoryId}class="selected"{/if} {if ($node.id == 'здесь указать id категории, которую не отображать' || $node.id == 'здесь указать id второй категории, которую не отображать'}style="display: none"{/if} title="{$node.desc|escape:'htmlall':'UTF-8'}">{$node.name|escape:'htmlall':'UTF-8'}</a> {if $node.children|@count > 0} <ul> {foreach from=$node.children item=child name=categoryTreeBranch} {if $smarty.foreach.categoryTreeBranch.last} {include file="$branche_tpl_path" node=$child last='true'} {else} {include file="$branche_tpl_path" node=$child last='false'} {/if} {/foreach} </ul> {/if} </li> Link to comment Share on other sites More sharing options...
Astrei Posted June 28, 2013 Author Share Posted June 28, 2013 Спасибо за ответ. Сейчас ещё раз объясню что хочется. Допустим есть категория 1. В ней есть подкатегория 1.1 и 1.2. В этих подкатегориях уже товары. есть категория 2. В ней тоже подкатегории 2.1 и 2.2. Когда происходит вывод в блоке категорий. то там вначале появляются категория 1, а уже в ней появляются категории 1.1 и 1.2. Можно ли сделать так, чтобы в блоке категория 1 не выводилась (не показывалась), а показывались только подкатегории? На вопрос зачем мне тогда вообще нужны категории 1 и 2, то мне необходимо в верхнем горизонтальном меню выводить отдельными пунктами категория 1 и категория 2, которые раскрываются и там уже можно выбрать подкатегории. А как сделать это по другому я не знаю. Link to comment Share on other sites More sharing options...
Dzianis Yurevich Posted June 28, 2013 Share Posted June 28, 2013 Спасибо за ответ. Сейчас ещё раз объясню что хочется. Допустим есть категория 1. В ней есть подкатегория 1.1 и 1.2. В этих подкатегориях уже товары. есть категория 2. В ней тоже подкатегории 2.1 и 2.2. Когда происходит вывод в блоке категорий. то там вначале появляются категория 1, а уже в ней появляются категории 1.1 и 1.2. Можно ли сделать так, чтобы в блоке категория 1 не выводилась (не показывалась), а показывались только подкатегории? На вопрос зачем мне тогда вообще нужны категории 1 и 2, то мне необходимо в верхнем горизонтальном меню выводить отдельными пунктами категория 1 и категория 2, которые раскрываются и там уже можно выбрать подкатегории. А как сделать это по другому я не знаю. тогда вот решение: <li {if isset($last) && $last == 'true'}class="last"{/if}> <a href="{$node.link|escape:'htmlall':'UTF-8'}" {if isset($currentCategoryId) && $node.id == $currentCategoryId}class="selected"{/if} {if ($node.id == 'здесь указать id категории, которую не отображать' || $node.id == 'здесь указать id второй категории, которую не отображать'}style="display: none"{/if} title="{$node.desc|escape:'htmlall':'UTF-8'}">{$node.name|escape:'htmlall':'UTF-8'}</a> {if $node.children|@count > 0} <ul> {foreach from=$node.children item=child name=categoryTreeBranch} {if $smarty.foreach.categoryTreeBranch.last} {include file="$branche_tpl_path" node=$child last='true'} {else} {include file="$branche_tpl_path" node=$child last='false'} {/if} {/foreach} </ul> {/if} </li> Link to comment Share on other sites More sharing options...
Astrei Posted June 28, 2013 Author Share Posted June 28, 2013 К сожалению не повлияло вообще. Link to comment Share on other sites More sharing options...
Dzianis Yurevich Posted June 28, 2013 Share Posted June 28, 2013 А кэш выключен? Можно URL магазина? Link to comment Share on other sites More sharing options...
Astrei Posted June 28, 2013 Author Share Posted June 28, 2013 Всё работает. Спасибо. Вносил изменения в корневой папке, а надо было в темах со своим проектом. Link to comment Share on other sites More sharing options...
Dzianis Yurevich Posted June 28, 2013 Share Posted June 28, 2013 Всегда хорошо, когда форум помогает)) Link to comment Share on other sites More sharing options...
Oleg2013 Posted July 19, 2013 Share Posted July 19, 2013 (edited) Всегда хорошо, когда форум помогает)) Ребята, погодите! Не закрывайте тему!!! Мне нужно ваша помощь. Опишу в 2-х словах. Использую PrestaShop v1.5.4.1 и стандартный модуль категорий. У меня несколько главных категорий (около 5-и), но в данный момент они отключен, активна только одна. Она главная и имеет подкатегории до 5-го уровня. Проблема в том, что в модуле КАТЕГОРИИ она отображается в свернутом состоянии и получается, что клиенты не видят подкатегории до тех пор пока не нажмут на ее. Да и выглядит это не красиво. Так вот и вопрос: Может кто подскажет, где и что нужно поменять для того, чтобы категории отображались в развернутом виде т.е. Сейчас у меня выглядит это так: Модуль КАТЕГОРИИ ------------------------------ - 1-я категория+ ------------------------------ а нужно сделать вот так: Модуль КАТЕГОРИИ ------------------------------ - 1-я категория -- -- 1-я подкатегория -- -- 2-я подкатегория+ -- -- 3-я подкатегория+ -- -- 4-я подкатегория -- -- 5-я подкатегория+ ------------------------------ Читал тут статьи, пытался методом тыка что-то изменить, но ничего не вышло =( Буду очень благодарен за помощь! Спасибо! Edited July 19, 2013 by Oleg2013 (see edit history) Link to comment Share on other sites More sharing options...
earoff Posted July 23, 2013 Share Posted July 23, 2013 тогда вот решение: <li {if isset($last) && $last == 'true'}class="last"{/if}> <a href="{$node.link|escape:'htmlall':'UTF-8'}" {if isset($currentCategoryId) && $node.id == $currentCategoryId}class="selected"{/if} {if ($node.id == 'здесь указать id категории, которую не отображать' || $node.id == 'здесь указать id второй категории, которую не отображать'}style="display: none"{/if} title="{$node.desc|escape:'htmlall':'UTF-8'}">{$node.name|escape:'htmlall':'UTF-8'}</a> {if $node.children|@count > 0} <ul> {foreach from=$node.children item=child name=categoryTreeBranch} {if $smarty.foreach.categoryTreeBranch.last} {include file="$branche_tpl_path" node=$child last='true'} {else} {include file="$branche_tpl_path" node=$child last='false'} {/if} {/foreach} </ul> {/if} </li> Привет, я попробовал сделать так же, но в итоге у меня рухнул магазин, указал id категории и в итоге вместо магазина получил надпись "категории" на чистом листе. Как мне сделать так чтобы скрыть только одну категорию из блока? Она в итоге остается рабочая и ссылка на категорию остается, она только должна изчезнуть из блока Link to comment Share on other sites More sharing options...
gero Posted September 3, 2013 Share Posted September 3, 2013 Привет, я попробовал сделать так же, но в итоге у меня рухнул магазин, указал id категории и в итоге вместо магазина получил надпись "категории" на чистом листе. Как мне сделать так чтобы скрыть только одну категорию из блока? Она в итоге остается рабочая и ссылка на категорию остается, она только должна изчезнуть из блока А если не выводить указанные категории в модуле "Categories block", то в шаблоне modules/blockcategories/category-tree-branch.tpl прописать дополнительное условие: <li {if isset($last) && $last == 'true'}class="last"{/if}> <a href="{$node.link|escape:'htmlall':'UTF-8'}" {if isset($currentCategoryId) && $node.id == $currentCategoryId}class="selected"{/if} {if ($node.id == 'здесь указать id категории, которую не отображать' || $node.id == 'здесь указать id второй категории, которую не отображать'}style="display: none"{/if} title="{$node.desc|escape:'htmlall':'UTF-8'}">{$node.name|escape:'htmlall':'UTF-8'}</a> {if $node.children|@count > 0} <ul> {foreach from=$node.children item=child name=categoryTreeBranch} {if $smarty.foreach.categoryTreeBranch.last} {include file="$branche_tpl_path" node=$child last='true'} {else} {include file="$branche_tpl_path" node=$child last='false'} {/if} {/foreach} </ul> {/if} </li> Сделал как Вы советовали. В итого падает магазин. Ошибка 500. Вот мой файл: <li {if isset($last) && $last == 'true'}class="last"{/if}> <a href="{$node.link|escape:'htmlall':'UTF-8'}" {if isset($currentCategoryId) && $node.id == $currentCategoryId}class="selected"{/if} title="{$node.desc|escape:'htmlall':'UTF-8'}" style="background:none;padding-left:7px">{$node.name|escape:'htmlall':'UTF-8'}</a> </li> А вот мой сайт www.shopthule.ru нужно скрыть в левой части 2-е последние категории. Версия 1.5.4 Link to comment Share on other sites More sharing options...
karns Posted November 5, 2013 Share Posted November 5, 2013 Ребята, погодите! Не закрывайте тему!!! Мне нужно ваша помощь. Опишу в 2-х словах. Использую PrestaShop v1.5.4.1 и стандартный модуль категорий. У меня несколько главных категорий (около 5-и), но в данный момент они отключен, активна только одна. Она главная и имеет подкатегории до 5-го уровня. Проблема в том, что в модуле КАТЕГОРИИ она отображается в свернутом состоянии и получается, что клиенты не видят подкатегории до тех пор пока не нажмут на ее. Да и выглядит это не красиво. Так вот и вопрос: Может кто подскажет, где и что нужно поменять для того, чтобы категории отображались в развернутом виде т.е. Сейчас у меня выглядит это так: Модуль КАТЕГОРИИ ------------------------------ - 1-я категория+ ------------------------------ а нужно сделать вот так: Модуль КАТЕГОРИИ ------------------------------ - 1-я категория -- -- 1-я подкатегория -- -- 2-я подкатегория+ -- -- 3-я подкатегория+ -- -- 4-я подкатегория -- -- 5-я подкатегория+ ------------------------------ Читал тут статьи, пытался методом тыка что-то изменить, но ничего не вышло =( Буду очень благодарен за помощь! Спасибо! В настройках модуля blockcategories отключи динамический режим. 2 Link to comment Share on other sites More sharing options...
homunculus Posted November 6, 2013 Share Posted November 6, 2013 Подскажите пожалуйста как сократить до 30 символов title - всплывающие окна в меню категорий (при наведении на категорию появляется окно с полным её описанием) в category-tree-branch.tpl есть строчка title="{$node.desc|escape:'htmlall':'UTF-8'}" как можно поправить? Link to comment Share on other sites More sharing options...
Triton63 Posted November 14, 2014 Share Posted November 14, 2014 title="{$node.desc|escape:html:'UTF-8'|truncate:30}" Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now