PDA

Zobacz pełną wersję : Problem z wyglądem szablonu na kolejnych podstronach



user_2013
02-10-2013, 12:37
Witam,

Jestem tu nowy na forum. Jeśli mój opisany problem był już na forum, to przepraszam za spam :)
Ale szczerze mówiąc nigdzie nie udało mi się znaleść rozwiązania jak tworzyć szablon aby główna strona różniła się od podstron. Wszędzie pisze aby na podstronach zmieniać szablon, przypisująć inny szablon dla pozycji menu. I wsumie tak zrobiłem ale nie jestem pewien czy poprawnie wieć dlatego umieszcza tu mój post.
Stworzyłem taki układ strony głównej:
7027
Plik index wygląda następująco:


<body>
<div id="strona">
<div id="logowanie">
<p>Logowanie</p>
</div>
<div id="naglowek">
<div id="logo"><h1>Logo</h1></div>
<div id="kontakt">
<div id="telefon"><h3>Telefon</h3></div>
<div id="email"><h3>Email</h3></div>
</div>
</div>
<div id="menu">
<ul class="menu">
<li> <a href=""> Witamy </a></li>
<li> <a href=""> O nas </a></li>
<li> <a href=""> Oferta </a></li>
</ul>
</div>
<div id="baner">
<h1>BANER</h1>
</div>
<div id="tresc">
<div id="pole-1">
<p>Pole 1</p>
</div>
<div id="pole-2">
<p>Pole 2</p>
</div>
<div id="pole-3">
<p>Pole 3</p>
</div>
</div>
<div id="stopka">
<h3> Stopka</h3>
</div>
</div>

Szablon ten uruchamiam bez problemu na Joomli, dodając oczywiście w odpowiednie div-y linijkę kodu odpowiedzialną za ładowanie modułu czy komponentu.
Problem pojawia się jeśli chce przejśc na inna podstronę. Np żeby kolejna podstrona wyglądała tak:
7028
Kod pliku index:


<body>
<div id="strona">
<div id="logowanie">
<p>Logowanie</p>
</div>
<div id="naglowek">
<div id="logo"><h1>Logo</h1></div>
<div id="kontakt">
<div id="telefon"><h3>Telefon</h3></div>
<div id="email"><h3>Email</h3></div>
</div>
</div>
<div id="menu">
<ul class="menu">
<li> <a href=""> Witamy </a></li>
<li> <a href=""> O nas </a></li>
<li> <a href=""> Oferta </a></li>
</ul>
</div>
<div id="tresc">
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum</p>
</div>
<div id="stopka">
<h3> Stopka</h3>
</div>
</div>
</body>


I teraz moje zasadnicze pytanie, wcześniejszy układ nazwijmy szablon-1 (odpowiedzialny za wyświetlenie głównej strony). Układ drugi nazwijmy szablon-2.
I dotej pory chcąc zmienić wygląd strony na podstronach, robiłem tak że do menu konkretnego linku np O nas przepisywałem szblon-2 i układ strony mi się zmieniał. Ale wiąze się to z tym że w folderze templates mam już wtedy dwa szablony i chcąć wprowadzić jakieś zmiany muszę pamiętam w którym szablonie mam to zmieniać. Czy Joomla nie będzie wolniej działać jeśli tak będę zmieniał szablony? Czy to jest optymalne rozwiązanie ?
A co jeśli np zajdzie potrzena na kolejnej podstronie zmienić szablon na taki:
7029
Plik index


<body>
<div id="strona">
<div id="logowanie">
<p>Logowanie</p>
</div>
<div id="naglowek">
<div id="logo"><h1>Logo</h1></div>
<div id="kontakt">
<div id="telefon"><h3>Telefon</h3></div>
<div id="email"><h3>Email</h3></div>
</div>
</div>
<div id="menu">
<ul class="menu">
<li> <a href=""> Witamy </a></li>
<li> <a href=""> O nas </a></li>
<li> <a href=""> Oferta </a></li>
</ul>
</div>
<div id="tresc">
<div class="pole_lewe"
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum</p>
</div>
<div class="pole_prawe">
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum</p>
</div>
</div>
<div id="stopka">
<h3> Stopka</h3>
</div>
</div>
</body>


i znowu muszę tworzyć 3szablon identyczny jak 2 wcześniejsze pozostałe z wszystkimi plikami images, css itp różniący się tylko układem div-ów i lekko zmienionym css ?
Próbowałem jeszcze do folderu szablonu tworzyć plik np: układ-2-kolumny.php dodawałem go do templateDetails.xml ale nie mam możliwości przypisania go do menu.

Jac
02-10-2013, 14:03
Inną zawartość strony głównej możesz określić warunkiem w kodzie szablonu. Na przykład takim:


<?php if ($_REQUEST[view] == 'featured') { ?>
//kod strony głównej
<?php } else {
//kod podstron
<?php } ?>

Po więcej informacji użyj jednej z popularnych wyszukiwarek.