THELIA Forum

Welcome to the THELIA support and discusssion forum

Announcement

Rejoignez la communauté sur le Discord Thelia : https://discord.gg/YgwpYEE3y3

Offline


Bonjour à tous,

Je voudrais afficher mes sous catégories dans le menu lorsque le curseur passe au dessus d'une catégorie (=Titre) mais avec ma boucle ci dessous, ça m'affiche tout avec la catégorie: (j'ai fait le même menu que ça : http://www.be-wak.fr/ )

<div class="collapse navbar-collapse" id="navbar-primary">
            <ul class="nav navbar-nav navbar-categories">
                <li><a href="{navigate to="index"}" >{intl l="Home" d="hooknavigation.fo.default"}</a></li>
                {loop type="category" name="category.navigation" parent="0"}
                <li><a href="{$URL}">{$TITLE}</a>
                    <ul class="subCategories">
========================================  c'est cette boucle qui n'est pas bon ========================================
                        {loop type="category" name="category" parent=$category}
                        <li><a href="{$URL}">{$TITLE}</a></li>
                        {/loop}
======================================== fin de la boucle ========================================================
                    </ul>
                </li>
                {/loop}
            </ul>

Voilà comment c'est construit:  Homme
                                                           - chaussure
                                                                       - chaussures ville
                                                           - jean
                                                                       - slim
                                                           - t-shirt
                                                  Femme
                                                           -
                                                           -
etc.......

mais mon problème c'est que ça m'affiche tout ça en même temps.

Merci d'avance

Last edited by Dom92 (02-04-2015 11:01:45)

Offline


{loop type="category" name="category" parent=$category}

Tu le sors d'où le $category ?


OpenStudio Toulouse

Offline


c'était juste pour tester.....mais apparemment c'est pas bon. Sinon j'ai rajouter que ça dans le code.

Last edited by Dom92 (18-03-2015 16:06:14)

Offline


Ben disons que tu ne peux pas inventer une variable ($category) en espérant qu'elle contienne quelque chose (quoi ?) que tu attendrais big_smile


OpenStudio Toulouse

Offline


tu n'as pas une solution par hasard.......? je suis presque sur que c'est la variable qui n'est pas bon et qu'il faut changer mais je ne trouve pas.

Last edited by Dom92 (18-03-2015 16:17:29)

Offline


si tu n'initialises pas ta variable $categorie cela ne peut pas marcher

Offline


Ben on ne peut pas deviner. Tu veux afficher les catégories qui ont quel ID parent ? Ou autrement dit, tu veux afficher les sous-catégories de quelle catégorie ?


OpenStudio Toulouse

Offline


en gros pour lister toutes les categories/sous-categories tu dois avoir

{function menutop level=0}  //fonction recursive menutop
  {loop type="category" name="navigation-$level" parent=$parent need_count_child=1}
    {if $CHILD_COUNT> 0}
       ......//affiche le titre de la categorie  sous-categorie
       {menutop parent=$ID level=$level+1} //appel de la fonction recursive menutop pour afficher les enfants de la categorie $ID
    {else}
       ......//affiche l'enfant
    {/if}
  {/loop}
{/function}
{menutop parent='0'}  //appel de la fonction recursive menutop

a toi de placer tes ul et li

Offline


Roadster31 ==> Je voudrais afficher les sous catégories des catégories, c'est à dire que lorsque je met le curseur sur la catégorie "Homme" (par exemple) ça me liste les sous catégories:
Chaussures en titre et en dessous il y aura la liste - chaussures ville
                                                                                - basket
jean en titre et liste : - slim
                                 - etc...

comme sur ce site : http://www.be-wak.fr/


ZZUUTT ==> Merci je testerai ça et je vous tiendrai au courant

Last edited by Dom92 (07-04-2015 13:11:00)

Offline


Pour ceux qui ont besoin du code (À mettre dans la page main-navbar-primary.html) voilà la bonne réponse que j'ai réussi à trouver avec l'aide de ZZUUTT:

{function menutop level=0}
            {loop type="category" name="navigation-$level" parent=$parent need_count_child=1}
                {if $CHILD_COUNT > 0}
                    <li class="enfant_1">
                        <a href="{$URL}" class="parentNavigation">{$TITLE}</a>

                        <ul class="subCategories">
                            {menutop parent=$ID level=$level+1}
                        </ul>
                    </li>
                    {else if $CHILD_COUNT eq 0 }
                    {$mavar = 1}
                    {if $level eq $mavar }
                        <li class="enfant_1">
                            <a href="{$URL}">{$TITLE}</a>
                        </li>
                        {else}
                        <li class="enfant_2">
                            <a href="{$URL}">{$TITLE}</a>
                        </li>
                    {/if}
                {/if}
            {/loop}
        {/function}

        <div class="collapse navbar-collapse" id="navbar-primary">
            <ul class="nav navbar-nav navbar-categories">
                <li><a href="{navigate to='index'}" >{intl l="Home" d="hooknavigation.fo.default"}</a></li>
                <!--<li><a href="{navigate to="index"}" class="home">{intl l="Home" d="hooknavigation.fo.default"}</a></li>-->
                {menutop parent='0'} <!-- appel de la fonction recursive menutop -->
            </ul>
        </div>

Et merci à tous pour votre aide.

Last edited by Dom92 (03-04-2015 15:16:42)

Offline


Le code tel que la donne Dom92 ne marche pas
Il manque l'appel de la fonction

{menutop parent='0'}

Offline


Voilà j'ai modifier, ça fonctionne maintenant (j'avais oublier de mettre ce code)

<div class="collapse navbar-collapse" id="navbar-primary">
            <ul class="nav navbar-nav navbar-categories">
                <li><a href="{navigate to='index'}" >{intl l="Home" d="hooknavigation.fo.default"}</a></li>
                <!--<li><a href="{navigate to="index"}" class="home">{intl l="Home" d="hooknavigation.fo.default"}</a></li>-->
                {menutop parent='0'} <!-- appel de la fonction recursive menutop -->
            </ul>
        </div>

Last edited by Dom92 (03-04-2015 15:36:31)