Jump to content

[RESOLU] Pas de sous catégorie affichée?


Recommended Posts

Bonjour à toutes et à tous,

 

je vous expose ma requête :

J'ai donc une boutique en 1.6.0.9 en place et je pense avoir un "problème"... Lorsque je clique sur la catégorie principale du menu vertical, j'ai une page vide avec le message : Il n'y a aucun produit...

J'aimerais donc afficher les sous-catégorie avec leurs miniatures quoi, il me semble que c'est censé être comme ça à la base?

 

En gros, j'ai un  menu par exemple : APPLE

Sous catégories : iPhone / iPad etc etc

 

Lorsque l'on clique sur APPLE, logiquement je devrais tomber sur une page APPLE avec les sous catégories qui s'affichent et moi j'ai un message : il n'y a aucun produit.

 

Donc avez vous une idée de comment faire pour afficher les sous catégories s'il vous plaîs?

 

Merci à vous :)

Edited by kurtspirit (see edit history)
Link to comment
Share on other sites

J'avance petit à petit... J'ai pu donc localiser le soucis mais je n'arrive pas à le corriger.

Le fichier categorie.tpl est mal construit je pense, si je le remplace par le fichier du thème par défaut, ça fonctionne...

Voici le contenu actuel :

{if isset($category)}
    {if $category->id AND $category->active}
        <h1>{strip}
            {$category->name|escape:'htmlall':'UTF-8'}
            <span>
                {if $category->id == 1 OR $nb_products == 0}{l s='There are no products.'}
                {else}
                    {if $nb_products == 1}{l s='There is'}{else}{l s='There are'}{/if} 
                    {$nb_products} 
                    {if $nb_products == 1}{l s='product.'}{else}{l s='products.'}{/if}
                {/if}
            </span>{/strip}
        </h1>

Je pense que c'est là mais si quelqu'un peut m'aider sur ce coup, ça serait vraiment sympa!

Merci à vous.

Link to comment
Share on other sites

Bonjour;

 

Verifie s'il ya un traitement de sous-catégories dans le même fichier (category.tpl)

 

{if isset($subcategories)}

    ....

{/if}

 

Merci pour ta réponse.

J'ai modifié le fichier pour ajouter le traitement des sous catégories. Voici donc le fichier maintenant :

{*
* 2007-2013 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License (AFL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/afl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to [email protected] so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
*  @author PrestaShop SA <[email protected]>
*  @copyright  2007-2013 PrestaShop SA
*  @license    http://opensource.org/licenses/afl-3.0.php  Academic Free License (AFL 3.0)
*  International Registered Trademark & Property of PrestaShop SA
*}

{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'}
            <span>
                {if $category->id == 1 OR $nb_products == 0}{l s='There are no products.'}
                {else}
                    {if $nb_products == 1}{l s='There is'}{else}{l s='There are'}{/if} 
                    {$nb_products} 
                    {if $nb_products == 1}{l s='product.'}{else}{l s='products.'}{/if}
                {/if}
            </span>{/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')|escape:'html'}" 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}
                    <div id="category_description_short">{$description_short}</div>
                    <div id="category_description_full" style="display:none;">{$category->description}</div>
                    <a href="#" onclick="$('#category_description_short').hide(); $('#category_description_full').show(); $(this).hide(); return false;" class="lnk_more">{l s='More'}</a>
                {else}
                    <div>{$category->description}</div>
                {/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')|escape:'html'}" 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>
        {/if}

        {if $products}
                {include file="$tpl_dir./product-compare.tpl"}
                {include file="$tpl_dir./product-sort.tpl"}
                <div id="products_viewpoint" class="list">
                {include file="$tpl_dir./product-list.tpl" products=$products}
                </div>
                {include file="$tpl_dir./product-compare.tpl"}
                {include file="$tpl_dir./pagination.tpl"}
            {elseif !isset($subcategories)}
                <p class="warning">{l s='There are no products in this category.'}</p>
            {/if}
    {elseif $category->id}
        <p class="warning">{l s='This category is currently unavailable.'}</p>
    {/if}
{/if}

Donc maintenant j'ai bien les sous-catégories affichées mais j'ai aussi un message : il n'y a aucun produits." qui ne veut pas partir .

 

L'affichage aussi des sous-catégories est pas bonne aussi par rapport au format du template.

 

Voici par exemple l'affichage des sous catégories :

http://www.repairmobilecenter.com/shop/index.php?id_category=13&controller=category

Il faudrait que j'arrive à faire des vignettes plus larges et cote à cote, pas en ligne comme actuellement.

On voit aussi le message tout en haut.

 

Une idée par hasard pour les ajustements?

 

Merci beaucoup par avance.

 

  • Like 1
Link to comment
Share on other sites

Pour mettre les sous-cat en grille pas en liste, deux modifications à faire

 

1 - dans le fichier category.tpl, supprime la class clearfix des li :

       <ul class="inline_list">
            {foreach from=$subcategories item=subcategory}

            <li class="clearfix">

            .....

2 - dans category.css ligne 58

category.css ligne 58
.inline_list li {
    float: left;
    padding: 10px 0px;
    margin-right: 2%;
    width: 48%; /*48% pour 2 colonnes,  ou 30% pour 3 colonnes*/
}

Edited by S-HAMMANI (see edit history)
  • Like 1
Link to comment
Share on other sites

Merci beaucoup pour l'aide ! Alors, j'ai bien les sous catégorie placée correctement, il me faut maintenant agrandir les vignettes mais ça c'est autre chose.

Par contre pour les messages 'il n'y a pas de produits.", rien à faire... J'ai appliqué ta modification et toujours les deux messages comme tu peux le voir ici par exemple : http://www.repairmobilecenter.com/shop/index.php?id_category=13&controller=category

 

Merci beaucoup à toi ;)

Link to comment
Share on other sites

Tu essay ça:

<span>
{if (isset($category) && $category->id == 1) OR (isset($nb_products) && $nb_products == 0 && !isset($subcategories) )}
    {l s='There are no products in this category.'}
{elseif isset($subcategories)}
         {literal} <span> Un texte à ton choix ou rien ... <span> {/literal}
{else}
    {if isset($nb_products) && $nb_products == 1}
        {l s='There is 1 product.'}
    {elseif isset($nb_products)}
        {l s='There are %d products.' sprintf=$nb_products}
    {/if}
{/if}
</span>
  • Like 1
Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...