[TOUTES VERSIONS] Catégories à onglets

Voir le sujet précédent Voir le sujet suivant Aller en bas

[TOUTES VERSIONS] Catégories à onglets

Icône par defaut le Ven 18 Mar 2016 - 16:28
SeLfde4Th7
avatar
Administrateur

MessageSeLfde4Th7

  • 16px
  • 24px
  • Zoom
Bonjour,

Cette astuce vous permettra d'avoir des catégories à onglet de façon automatique.
Le code fera tout de manière autonome et ce peut importe la version de votre forum.
Attention toutefois à ce que le titre de vos catégories ne contiennent pas le caractère spécial : "


Pour cela nous devons modifier le template index_box:
Affichage/Templates/Général/index_box

et il va falloir dans un premier temps localiser les commentaires :
Code:
<!-- BEGIN catrow --><!-- BEGIN tablehead -->

Puis coller avant ceux-ci le code :
Code:
<!-- Container des onglets -->
<ul id="tab" class="tab_container"></ul>

Et après ceux-ci le code :
Code:
<!-- Ajout des onglets -->
<script>
   jQuery(function($){
      $('.tab_container').append("{catrow.tablehead.L_FORUM}");
      $('#tab').html($('#tab').html().replace(/h2/g, 'li'));
   });
</script>
<div class="forum_container">

Encore une fois localisez le commentaire :
Code:
<!-- END tablefoot -->

Et collez avant celui-ci le code :
Code:
</div>

Puis à la toute fin du template collez le code :
Code:
<script>
   jQuery(function($){
      $('.forum_container').each(function(index){
         $(this).attr('id', 'c'+(index+1));
      });


      $('#tab li').each(function(index){
         $(this).addClass('tabs');
         $(this).contents().wrap('<a href="#c'+(index+1)+'" title="'+$(this).html()+'"></a>');

         if(!sessionStorage.getItem('active-cat') || $(sessionStorage.getItem('active-cat')).length != 0){
            $('#tab li').eq(0).addClass('active');
            $('#c1').show();
         }else{
            $('a[href="'+sessionStorage.getItem('active-cat')+'"]').closest('li').addClass('active');
            $(sessionStorage.getItem('active-cat')).show();
         }


         $(this).find('a').click(function(event){
            event.preventDefault();
            var target = $(this).attr('href');
            sessionStorage.setItem('active-cat', target);
            $(this).parent().siblings('.tabs').removeClass('active');
            $(this).parent().addClass('active');
            $(target).show().siblings('.forum_container').hide();
         });
      });

      if(location.pathname != '/'){
         $('#tab').remove();
      };
   });
</script>
<style>.forum_container{ display: none; } #tab li{ list-style: none; }</style>

Pensez à enregistrer puis à valider en cliquant respectivement sur Enregistr puis Ajout

Vous pourrez styliser les onglets via du code CSS, si vous n'êtes pas inspiré ou si vous ne savez comment faire je vous conseille de vous diriger vers l'entraide de ce forum ou d'utiliser le style propose par Milouze14 en collant dans votre feuille se style CSS le code suivant :

Dans la feuille de style:
Affichage/Images et Couleurs/Couleurs/Feuille de style

Code:
/*La barre des onglets*/
ul#tab.tab_container {
   background:#FAFAFA;
   border-bottom:1px solid #CCC !important;
   width:auto;
   height: 30px;
}
/*Les onglets des categories*/
ul#tab.tab_container li {
   float:left !important;
   margin-left: 5px;
}
/*Les liens des categories*/
ul#tab.tab_container li a {
   text-decoration:none !important;
   color:#39C;
   font-size:12px;
   font-weight:bold;
   font-family:"Trebuchet MS",Arial,Verdana,Sans-serif;
   background:url('http://i18.servimg.com/u/f18/18/45/41/65/nav10.png') repeat-x 0px 30px;
   display:inline-block;
   padding:0 10px;
   height:30px;
   line-height:30px;
   transition: 200ms;
}
/*L effet au survol des liens de categories*/
ul#tab.tab_container li a:hover {
   background-position: 0 25px;
}
/*L onglet actif*/
ul#tab.tab_container li.tabs.active {
   border-top: 4px solid #71be47;
}

Pensez à valider les modifications en cliquant sur le bouton Valid

Voila,c'est tout pour le moment clin oeil.
Un soucis direction l'entraide hinhin
[Vous devez être inscrit et connecté pour voir ce lien]
Milouze14
avatar
Fondateur

MessageMilouze14

  • 16px
  • 24px
  • Zoom
Merci Maxime pour le partage hinhin


[Vous devez être inscrit et connecté pour voir cette image]

-Le respect de nos semblables est la règle de notre conduite.-

Fondateur des forums


[Vous devez être inscrit et connecté pour voir ce lien][Vous devez être inscrit et connecté pour voir ce lien]



Invité
avatar
Invité

MessageInvité

  • 16px
  • 24px
  • Zoom
Merci beaucoup Maxime super
Ecleasya
avatar
Nouveau membre

MessageEcleasya

  • 16px
  • 24px
  • Zoom
Punaise merci pour ce code, j'crois je t'embrasserais les pieds .. ça fait TROIS PLOMBES que je cherche un code de ce genre, mais je trouvais jamais et là ... LÀ ... la perle rare ** j'crois j'vais te vouer un culte :D
Invité
avatar
Invité

MessageInvité

  • 16px
  • 24px
  • Zoom
Bonjour,

Merci pour ce magnifique partage
Sick.l.Offrande
avatar
Membre

MessageSick.l.Offrande

  • 16px
  • 24px
  • Zoom
Merci beaucoup pour le partage :)

Voir le sujet précédent Voir le sujet suivant Revenir en haut

Créer un compte ou se connecter pour répondre

Vous devez être membre pour répondre.

S'enregistrer

Rejoignez notre communauté ! C'est facile !


S'enregistrer

Connexion

Vous êtes déjà membre ? Aucun soucis, cliquez ici pour vous connecter.


Connexion

Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum