Start arrow Programowanie arrow Szablon arrow Funkcje Joomla! i Mambo w szablonach
Funkcje Joomla! i Mambo w szablonach Drukuj Wyślij znajomemu
Mimo że plik index.php kodowany jest w języku PHP, znajomość PHP przy projektowaniu szablonów jest niekonieczna, choć może być przydatna. Potrzebne fragmenty kodu znajdziesz w tym cyklu artykułów. A poniższe informacje o najczęściej stosowanych instrukcjach i funkcjach pomogą Ci rozumieć, o co w nich chodzi.

Najczęstsze instrukcje

Kodu PHP używamy w pliku index.php w trzech przypadkach:

  • aby odczytać z innych skryptów stałe i zmienne,
  • aby umieścić materiały generowane przez Joomla! lub Mambo,
  • aby dołączyć inne skrypty PHP.

W pliku index.php używamy najczęściej instrukcji PHP w takiej postaci:

1:   <?php funkcja(); ?>
2:   <?php echo ("fragment dokumentu HTML"); ?>
3:   <?php if (warunek){ instrukcja; }?>

Każda instrukcja obejmowana jest znacznikiem początkowym: <?php i końcowym: ?>. Pojedyncze polecenia zawsze kończy średnik. Pierwsza z przytoczonych instrukcji mówi: wykonaj funkcję. W nawiasach umieszczane są czasem parametry. Drugą można by przetłumaczyć jako: Wypisz fragment dokumentu HTML. A trzecią: Jeśli spełniony jest warunek, to wykonaj instrukcję. Proste?

Włączanie kodu HTML

Jeszcze prostsze! Bo kod HTML można w skryptach PHP umieszczać bez ujmowania go w instrukcje PHP. Nie musisz więc pisać:

<?php echo '<h1 class="contentpagetitle">Tytuł strony</h1> ?> 

Wystarczy wpisać po prostu:

<h1 class="contentpagetitle">Tytuł strony</h1>

Funkcje Joomla! i Mambo

Oto niemal komplet wykorzystywanych w szablonach funkcji.

mosShowHead()

Umieszcza w dokumencie HTML elementy nagłówka (HEAD):

  • tytuł strony
  • zestaw informacji ujmowanych w znacznikach meta: tytuł [title], autor [author], opis [description], słowa kluczowe [keywords], nazwę programu generującego [Generator], instrukcję dla robotów przeszukujących [robots],
  • adres bazowy [base href], w przypadku gdy włączona jest opcja prostych adresów (SEF)
  • odnośnik do ikony serwisu [link rel="shortcut icon"] umieszczanej w pasku adresu przeglądarki.
Składnia:
<?php mosShowHead(); ?>

Funkcja nie wymaga żadnych argumentów.

initEditor()

Po zalogowaniu się użytkownika uruchamia edytor WYSIWYG wykorzystywany do edycji materiałów na stronie frontowej. Stosowana łącznie z instrukcją sprawdzającą, czy użytkownik się zalogował.

Składnia:
<?php if ($my->id) {initEditor(); } ?>

Funkcja nie wymaga żadnych argumentów.

mosMainBody()

Umieszcza w szablonie główną treść strony, określoną w opcjach adresu URL. Treść wraz z elementami formatującymi jej rozmieszczenie w obszarze strony przeznaczonym na treść główną generowana jest przez komponenty Joomla! i Mambo

Składnia:
<?php mosMainBody (); ?>

Funkcja nie wymaga żadnych argumentów.

mosLoadComponents( )

Umieszcza szablonie komponent. Wymaga podania jako argumentu nazwy komponentu uszczuplonej o przedrostek com_, np. "banners".

Składnia:
<?php mosLoadComponets( $nazwa ); ?>

mosLoadModules (pozycja, styl)

Umieszcza w szablonie pozycję modułów wraz z opublikowanymi w niej modułami. Argument styl jest opcjonalny. Może zawierać jedną z pięciu wartości: 0, 1 -1, -2, -3, określających tryb wyświetlania modułu.

Składnia:
<?php mosLoadModules( $nazwa_pozycji [, $styl] ); ?>

Argument styl może przyjmować jedną z wartości:

  • wartość: 0. Standardowy, domyślny tryb wyświetlania modułów. Umieszcza moduły w elemencie obejmującym <div class="moduletable[sufiks]">, w jednokolumnowej tabeli, pionowo w kolejnych wierszach i zagnieżdżonych tabelach. Tytuły wyświetlane są zależne od ustawień w opcjach modułów, w wiersza nagłówkowych {code>th zagnieżdżonych tabel.
  • wartość: 1 umieszcza moduły w elemencie obejmującym <div class="moduletable[sufiks]">, w wielokolumnowej tabeli, poziomo w kolejnych komórkach i zagnieżdżonych w nich tabelach. Tytuły wyświetlane są zależne od ustawień w opcjach modułów, w wiersza nagłówkowych {code>th zagnieżdżonych tabel.
  • wartość: -1 umieszcza moduły bez tytułu i elementów obejmujących, a więc czystą treść generowaną przez moduł.
  • wartość: -2 umieszcza moduły tylko w elemencie obejmującym <div class="moduletable[sufiks]">. Tytuły wyświetlane są zależne od ustawień w opcjach modułów i obejmowane znacznikiem h3.
  • wartość: -3 umieszcza moduły w czterech elementach obejmujących div, w tym pierwszym oznaczonym klasą module[suffix]Tytuły wyświetlane są zależne od ustawień w opcjach modułów i obejmowane znacznikiem h3.

mosCountModules(pozycja)

Zlicza i zwraca ilość modułów opublikowanych w określonej argumentem pozycji jakas_nazwa.

Składnia:
<?php mosCountModules( $nazwa_pozycji ); ?>

Funkcji tej używa się do sprawdzenia, czy w oznaczonej pozycji zostały opublikowane moduły. Jeśli tak, wywołuje się funkcję wczytująca moduł. W wyniku zastosowania funkcji element rezerwujacy pozycję <div class="nazwa_klasy[przyrostek]"> umieszczany jest w dokumencie źródłowym HTML jedynie wówczas, gdy w pozycji został opublikowany przynajmniej jeden moduł.

mosPathWay( )

Umieszcza w szablonie ścieżkę do bieżącej lokalizacji (ścieżkę powrotu)

Składnia:
<?php mosPathWay(); ?>

Funkcja nie wymaga żadnych argumentów.

mosCurrentDate()

Umieszcza w szablonie bieżącą datę w formacie tekstowym. Wymaga zastosowania instrukcji PHP - echo lub print

Składnia:
<?php echo mosCurrentDate(); ?>

Funkcja nie wymaga żadnych argumentów.

Funkcje w szablonach zaplecza administracyjnego

mosMainBody_Admin()

Umieszcza w szablonie główną treść strony zaplecza administracyjnego, określoną w opcjach adresu URL..

Składnia:
<?php mosMainBody_Admin(); ?>

Funkcja nie wymaga żadnych argumentów.

mosLoadAdminModule(nazwa_modułu)

Umieszcza w szablonie moduł określony argumentem funkcji.

Składnia:
<?php mosLoadAdminModule( $nazwa );?>
Przykład:
<?php mosLoadAdminModule( 'fullmenu' );?>

Funkcja mosLoadAdminModule(nazwa_modułu) wymaga jednego argumentu - nazwy modułu uszczuplonej o przedrostek mod_.

mosLoadAdminModules(pozycja, styl)

Umieszcza w szablonie pozycję modułów wraz z opublikowanymi w niej modułami. Argument styl jest opcjonalny. Może zawierać jedną z trzech wartości: 0, 1, 2, określających tryb wyświetlania modułu.
Składnia:
<?php mosLoadAdminModule( $nazwa );?>
Przykład:
<?php mosLoadAdminModules( 'header', 2 );?>

Argument styl może przyjmować poniższe wartości:

  • wartość: 0. Standardowy, domyślny tryb wyświetlania modułów. Umieszcza czysta treść modułu
  • wartość: 1 - umieszcza każdy moduł w tabeli,
  • wartość: 2 - umieszcza każdy moduł wewnątrz znaczników <div>

Zmienne, stałe i obiekty

$mosConfig_sitename

Umieszcza w szablonie nazwę witryny pobraną z pliku configuration.php

Składnia:
<?php echo $mosConfig_sitename;?>

$mosConfig_live_site

Umieszcza w szablonie adres katalogu głównego witryny w postaci zapisanej w pliku configuration.php

Składnia:
<?php echo $mosConfig_live_site;?>

W wyniku zastosowania otrzymujemy np. taki efekt: http://www.joomla.pl/pomoc

$mosConfig_absolute_path

Umieszcza w szablonie ścieżkę absolutną pobraną z pliku configuration.php

Składnia:
<?php echo $mosConfig_absolute_path;?>

$my

Zawiera obiekt z atrybutami użytkownika, np. identyfikatorem, uprawnieniami. W szablonie wykorzystywana do sprawdzenia, czy użytkownik jest zalogowany, aby w takim przypadku wczytać edytor WYSIWYG.

Składnia:
<?php if ($my->id) {initEditor(); } ?>

_ISO

Zdefiniowana w pliku języowym stała, określająca standard kodowania znaków.

Składnia:
<?php echo _ISO; ?>

Uwagi, źródła

Jeżeli masz sugestie odnośnie treści lub chcesz zgłosić poprawki do tego rozdziału, skomentuj go albo umieść wiadomość na forum: Dokumentacja - Propozycje, zmiany, poprawki

Dziękujemy!

Stefan Wajda, Zespół Dokumentacji PCJ

 
« poprzedni artykuł   następny artykuł »