[Résolu] Tester si une page est active ?

Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
#1
Citation :#~~~~~ NE PAS SUPPRIMER CE BLOC ~~~~~
#~ Version du CMS : 1.6.6
#~ Version du MLE si existante : non
#~~~~~ NE PAS SUPPRIMER CE BLOC ~~~~~
Bonjour,

J'utilise ce bout de code dans un gabarit :
Code :
{foreach from=$cgsimple->get_children('','',$children) item='child'}
    {if $child.show_in_menu}
        <h3><a href="/{$child.alias}/">{$cgsimple->get_page_title($child.alias)}</a></h3>
        {$cgsimple->get_page_content($child.alias)}
    {/if}
{/foreach}
avec le module CGSimpleSmarty, il permet d'afficher les pages enfants de la page en cours.
Mais plutôt que if $child.show_in_menu, j'aurai besoin de tester si mes pages enfants sont actives ou non, genre if $child.active=1...
Je ne vois pas du tout comment faire ça au sein d'un gabarit, mes recherches n'ont donné aucun résultat. Il faut obligatoirement passer par une requête en base de données pour récupérer cette info ? Je ne l'ai trouvé nulle part dans les variable smarty...

Merci d'avance.
#1
Citation :#~~~~~ NE PAS SUPPRIMER CE BLOC ~~~~~
#~ Version du CMS : 1.6.6
#~ Version du MLE si existante : non
#~~~~~ NE PAS SUPPRIMER CE BLOC ~~~~~
Bonjour,

J'utilise ce bout de code dans un gabarit :
Code :
{foreach from=$cgsimple->get_children('','',$children) item='child'}
    {if $child.show_in_menu}
        <h3><a href="/{$child.alias}/">{$cgsimple->get_page_title($child.alias)}</a></h3>
        {$cgsimple->get_page_content($child.alias)}
    {/if}
{/foreach}
avec le module CGSimpleSmarty, il permet d'afficher les pages enfants de la page en cours.
Mais plutôt que if $child.show_in_menu, j'aurai besoin de tester si mes pages enfants sont actives ou non, genre if $child.active=1...
Je ne vois pas du tout comment faire ça au sein d'un gabarit, mes recherches n'ont donné aucun résultat. Il faut obligatoirement passer par une requête en base de données pour récupérer cette info ? Je ne l'ai trouvé nulle part dans les variable smarty...

Merci d'avance.
#2
Bon ba c'est résolu, quel idiot !

Il suffit de virer la condition {if $child.show_in_menu},
de mettre les sous pages en non visible dans le menu,
et d'appeler le gabarit de menu avec show_all="1" :
Code :
{cms_module module='menumanager' start_page="accueil" show_all="1" template='show_children_of'}
Par contre si qqn connait la syntaxe pour savoir si une page est active ou non, ça pourrait me resservir...

Merci.
#2
Bon ba c'est résolu, quel idiot !

Il suffit de virer la condition {if $child.show_in_menu},
de mettre les sous pages en non visible dans le menu,
et d'appeler le gabarit de menu avec show_all="1" :
Code :
{cms_module module='menumanager' start_page="accueil" show_all="1" template='show_children_of'}
Par contre si qqn connait la syntaxe pour savoir si une page est active ou non, ça pourrait me resservir...

Merci.


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)