Plusieurs templates dans un site

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • [Problème] Plusieurs templates dans un site

    Bonjour,

    voilà mon soucis, j'aimerais pouvoir attribuer un template spécifique pour une page spécifique.

    Mais je vous vois déjà arrivé avec l'assignation de menus dans la configuration template.

    Or mon problème est là, si je passe par cette méthode, le template par défaut gardera l'emprise du défault...

    Je voudrais pouvoir assigner le template pour la page sans aucune distinction du template par défaut attribué.


    En faisant quelques recherches, j'ai trouvé ce commentaire :

    Salut !
    Je souhaiterais avoir sur certaines page de mon site un template différents du reste du site.
    Je verrais quelque chose comme ça, tu créé un lien dans ton menu, de type : "Blog d'une catégorie" ou bien "Liste des articles d'une catégorie"

    Dans l'index.php de ton template, tu colles cette partie de code :


    $db = &JFactory::getDBO();
    $id = JRequest::getVar('id');
    if ( $id ) {
    if ( JRequest::getVar('view') == 'category' ) {
    $query = 'SELECT catid FROM #__categories WHERE id = ' . (int) $id;
    $db->setQuery($query, 0, 1);
    $catid = $db->loadResult();
    } elseif ( JRequest::getVar('view') == 'article' ) {
    $query = 'SELECT catid FROM #__content WHERE id = ' . (int) $id;
    $db->setQuery($query, 0, 1);
    $catid = $db->loadResult();
    }
    } else {
    $catid = '';
    }

    if ($catid != '' && $catid == 19) { ?>

    <!-- tu place ton code HTML ICI -->

    <?php }
    ?>
    En gros, le code va sélectionner l'id de la catégorie par une requête sql, si l'internaute clique sur cet l'id de menu dont tu veux changer le template, il y aura un changement.

    Tu te rend ensuite dans la "Gestion des catégories" de ton site
    Tu relève ID de la catégorie dernière ligne du tableau
    Tu vas ds le fichier index.php
    tu repères cette ligne
    if ($catid != '' && $catid == 19) { ?>
    tu change l'id de la catégorie ici => $catid == 19
    et tu places enfin le code HTML du nouveau template à la suite ...
    J'ai essayé cela me renvoie à une erreur dans le fichier index.php..

    Peut-être je m'y prends mal ou ce n'est pas la bonne méthode ?


    En vous remerciant vivement pour vos réponses !!

    PS : Désolé par avance si je n'ai pas mis le sujet dans le bon endroit et s'il fallait que je fasse un post de présentation avant de demander de l'aide ?

  • #2
    Re : Plusieurs templates dans un site

    Bonjour Expansium,

    Pour pouvoir choisir un template en fonction d'éléments qui ne soient pas les menus (par exemple les articles, les utilisateurs, etc.) j'utilise personnellement Chameleon :
    http://extensions.joomla.org/extensi...mplating/11173.
    C'est vrai qu'il est payant mais il fait très bien ce que je lui demande et surtout cela me coûte moins cher que le temps que j'aurai passé à écrire le code nécessaire et à le maintenir.

    Amicalement,
    Rajoz

    Commentaire


    • #3
      Re : Plusieurs templates dans un site

      Etant en phase de test et de choix d'un template, je constate un dysfonctionnement qui n'est pas lié à cette question, mais probablement apparenté.
      Afin que le bureau de mon association et son comité directeur fasse un choix, je veux présenter le site en version draft avec différents template.
      J'ai chargé un module qui permet d'assigner à topât le site un template au choix du visiteur et mon essai commence entre T3-Blank et Bizz3, le tout en joomla 3.1.5, avant de prendre éventuellement des templates pro payant.

      De façon native Joomla ne rend pas le service attendu :
      1. Si un module est assigné à une position sélectionnée parmi les positions d'un des template, exemple Module 1 appelé "Mes documents Beez3" en position "Droit au milieu - position 8" de beez3 et qu'une copie de ce module Module 1, appelé "Mes Documents T3" pour le repérer, est assigné à "Sidebar 2" de T3-blank.
      2. Lorsque l'on regarde les assignations résultantes, le Module 1 appelé "Mes documents Beez3" est en position 8 sans autre précision.
      3. En sélectionnant le template Beez3, seul le module Module 1 appelé "Mes documents Beez3" s'affiche
      4. En sélectionnant le template T3-blank, les deux modules sont affichés. Pourquoi ? T3-blank dispose également d'us position 8

      . Il semblerait donc que Joomla fasse des assignations sans s'occuper du template, mais uniquement du nom.

      Chameleon permettrait-il de s'affranchir de ce dysfonctionnement ?

      Commentaire


      • #4
        Re : Plusieurs templates dans un site

        Bonjour scubabyss,

        je constate un dysfonctionnement qui n'est pas lié à cette question
        Quand on change de question il faut ouvrir un nouveau post avec l'intitulé correspondant. Cela donne plus de chance d'avoir les réponses adaptées.

        J'ai un peu de mal à comprendre le point. Il y a bien une position "position-8" dans Beez3. Mais dans JA T3v2 Blank les positions mentionnées "position-8" et "Sidebar 2" n'existent pas ?!?!
        Les positions existantes dans la version actuelle de JA T3v2 Blank (v2.5.7 d'août 2013) sont les suivantes :
        Code:
        <positions>
            <position>hornav</position>
            <position>breadcrumbs</position>
            <position>search</position>
            <position>banner</position>
            <position>left</position>
            <position>right</position>
            <position>top</position>
            <position>user1</position>
            <position>user2</position>
            <position>user3</position>
            <position>user4</position>
            <position>user5</position>
            <position>user6</position>
            <position>user7</position>
            <position>user8</position>
            <position>user9</position>
            <position>user10</position>
            <position>user11</position>
            <position>footer</position>
            <position>syndicate</position>
            <position>debug</position>
            <position>mega1</position>
            <position>mega2</position>
            <position>top-panel</position>
        </positions>
        Joomla! utilise les positions qui sont définies dans le fichier templateDetails.xml du template utilisé. C'est le template qui définit l'emplacement de la position sur la page, habituellement cela se fait dans index.php, ce peut être plus compliqué dans les templates utilisant des frameworks. Je recommande le tutoriel de Joomlack sur les templates pour comprendre comment ils marchent : http://www.joomlack.fr/documentation...lates-joomla-3

        Amicalement,
        Rajoz

        Commentaire


        • #5
          Re : Plusieurs templates dans un site

          normalement, avec le template JAT3, tu doit pouvoir attribuer les memes noms de positions que Beez 3.
          Les endroits sur ton site peuvent être differents avec chaque template.
          Ce qui te feras une seule position pour tes deux templates, ce qui te simplifieras la gestion de tes modules en évitant d'avoir à créer un module pour
          chaque template.
          Regardes l'onglet layouts pour cela. clique sur l'engrenage a coté de chaque position.
          La liste déroulante contient toutes les positions de touts les templates installés.

          Commentaire

          Annonce

          Réduire
          Aucune annonce pour le moment.

          Partenaire de l'association

          Réduire

          Hébergeur Web PlanetHoster
          Travaille ...
          X