|
Znaleźć tu można wiele informacji niezbędnych do zbudowania swojego szablonu do systemu Joomla. Zamiennie będziemy używać określenia szablon/templatka. Z tym kursem zbudujesz swoją pierwszą templatkę. Zapraszam na mój kurs: szablony Joomla!
Żeby w ogóle zacząć uczyć się tworzenia szablonów Joomla trzeba najpierw poznać ogólną strukturę szablonów. Otóż szablony Joomla zapisywane są w folderze templates/nazwa_templatki(szablonu). Typowa budowa szablonu wygląda tak: 
Aby szablon prawidłowo funkcjonował wystarczy plik index.php. To właśnie od niego zaczniemy naszą przygodę z szablonem. Najprostszy szablon Joomla wygląda tak (plik index.php): <?php defined( "_VALID_MOS" ) or die( "Direct Access to this location is not allowed." );$iso = split( '=', _ISO );?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><?php if ( $my->id ) { initEditor(); } ?><meta http-equiv="Content-Type" content="text/html;><?php echo _ISO; ?>" /><?php mosShowHead(); ?><?php echo "<link rel=\"stylesheet\"href=\"$GLOBALS[mosConfig_live_site]/templates/$GLOBALS[cur_template]/css/template_css.css\"type=\"text/css\"/>" ; ?><?php echo "<link rel=\"shortcut icon\" href=\"$GLOBALS[mosConfig_live_site]/images/favicon.ico\" />" ; ?></head><body><?php mosMainBody(); ?></body></html> Nie będę się u zajmował omawianiem znaczenia poszczególnych wpisów. Przyjmijmy, że tak ma być, tak jest dobrze. Część bezpośrednio wyświetlana znajduje się w ramach znaczników <body></body>. Na załączonym przykładzie pomiędzy tymi znacznikami mamy wstawiony kod: <?php mosMainBody(); ?> Odpowiada on za wyświetlanie głównej zawartości witryny (na przykład artykułu, blogu artykułów, komponentu itd.). Jak rozbudować więc strukturę szablonu? Prostym sposobem, wystarczy między znaczniki <body></body> wpisać kod html (zakładam, że wiesz co to jest, jeśli jednak nie wiesz, to poszukaj darmowych kursów w internecie). Może to wyglądać na przykład tak: <body> <table border=1 bordercolor=black> <td colspan=3>NAGŁÓWEK STRONY</td><tr> <td>LEWA KOLUMNA</td> <td><?php mosMainBody(); ?></td> <td>PRAWA KOLUMNA</td><tr> <td colspan=3>STOPKA</td><tr> </table> </body> W praktyce wyświetlane jest to przez przeglądarkę w taki sposób:
Zastępujemy teraz ‘GŁÓWNA CZĘŚĆ WITRYNY’ wpisem <?php mosMainBody(); ?>, czyli: <body><table border=1 bordercolor=black><td colspan=3>NAGŁÓWEK STRONY</td><tr><td>LEWA KOLUMNA</td><td><?php mosMainBody(); ?></td><td>PRAWA KOLUMNA</td><tr><td colspan=3>STOPKA</td><tr></table></body> Brakuje nam jeszcze modułów. Jak je wkleić? Służy do tego polecenie <?php mosLoadModules('pozycja',styl); ?>, gdzie: Pozycja- to pozycja jednej ze zdefiniowanych pozycji w administratorze Joomla, może to być na przykład left, right, banner itd. Styl- może przyjąć wartości 0, 1, -1, -2, -3 , gdzie: 0 – moduły wyświetlane w jednej kolumnie (jeżeli jest więcej modułów na jednej pozycji). To wartość domyślna, której nie trzeba wpisywać. 1 – moduły wyświetlane jeden obok drugiego (horyzontalnie) -1 – moduły wyświetlane bez tytułu Kierując się tą wskazówką możemy wyposażyć nasz szablon Joomla w moduły: <body><table border=1 bordercolor=black><td colspan=3>NAGŁÓWEK STRONY</td><tr><td><?php mosLoadModules('left'); ?></td><td><?php mosMainBody(); ?></td><td><?php mosLoadModules('right'); ?></td><tr><td colspan=3>STOPKA</td><tr></table></body> W ten sposób nasza strona ma już treść i moduły. Co jeszcze możemy zrobić? Możemy na przykład w dolnej części witryny dać ścieżkę: <?php mospathway() ?> nazwę strony: <?php echo $mosConfig_sitename; ?> czy też pełną stopkę: <?php include_once( $mosConfig_absolute_path.'/includes/footer.php' ); ?> Może to wyglądać tak: <body><table border=1 bordercolor=black><td colspan=3>NAGŁÓWEK STRONY</td><tr><td><?php mosLoadModules('left'); ?></td><td><?php mosMainBody(); ?></td><td><?php mosLoadModules('right'); ?></td><tr><td colspan=3><?php echo $mosConfig_sitename; ?></td><tr></table></body> Jak widać, został jeszcze nagłówek strony. W to miejsce wystarczy przywołać jakąś grafikę wcześniej przygotowaną (tzw. header) i umieszczoną w katalogu ‘images’ naszego szablonu : <body><table border=1 bordercolor=black><td colspan=3><img src=”<?php echo "$GLOBALS[mosConfig_live_site]/templates/$GLOBALS[cur_template]/images/"; ?>header.jpg"></td><tr><td><?php mosLoadModules('left'); ?></td><td><?php mosMainBody(); ?></td><td><?php mosLoadModules('right'); ?></td><tr><td colspan=3><?php echo $mosConfig_sitename; ?></td><tr></table></body> Możemy się już cieszyć swoją pierwszą prostą templatką, która obsługuje nam ładnie moduły oraz główną zawartość serwisu: <?php defined( "_VALID_MOS" ) or die( "Direct Access to this location is not allowed." );$iso = split( '=', _ISO );?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><?php if ( $my->id ) { initEditor(); } ?><meta http-equiv="Content-Type" content="text/html;><?php echo _ISO; ?>" /><?php mosShowHead(); ?><?php echo "<link rel=\"stylesheet\"href=\"$GLOBALS[mosConfig_live_site]/templates/$GLOBALS[cur_template]/css/template_css.css\"type=\"text/css\"/>" ; ?><?php echo "<link rel=\"shortcut icon\" href=\"$GLOBALS[mosConfig_live_site]/images/favicon.ico\" />" ; ?></head><body><table border=1 bordercolor=black><td colspan=3><img src=”<?php echo "$GLOBALS[mosConfig_live_site]/templates/$GLOBALS[cur_template]/images/"; ?>header.jpg"></td><tr><td><?php mosLoadModules('left'); ?></td><td><?php mosMainBody(); ?></td><td><?php mosLoadModules('right'); ?></td><tr><td colspan=3><?php echo $mosConfig_sitename; ?></td><tr></table></body></html> W kursie tym pokazałem przykładową budowę strony opartą na tabelach kodu html. Obecnie głównie zaleca się stosowanie warstw <div>. Jak widać zostało jeszcze wiele do zrobienia. Trzeba wziąć się za formatowanie szablonu tak, by strona była miła dla oka. W następnej części kursu tworzenia szablonów Joomla zajmiemy się stylami CSS, które w prosty sposób pozwolą nam formatować wyświetlane elementy strony (myślę, że wpis ukaże się jeszcze w tym roku ;). Jeżeli są kwestie, które chcesz aby omówić w pierwszej kolejności, to proszę o pisanie o tym w komentarzach poniżej.
» 2 Komentarze
1"Kolejna czesc" z wtorek, 04 listopad 2008 09:33
Z niecierpliwością czekam na kolejna odsłonę kursu. Nie wiedzialem od czego zaczac TERAZ WIEM! Dzieki
2"super" z środa, 12 listopad 2008 13:28
zajebiste to jest !!!! prosto i na temat rewelacja !!!!
» Wyślij komentarz
|