Kiedy Piszę jakiś komponent albo moduł dla joomli są pewne partie kodu, które się często powtarzają. Postanowiłem je zebrać w jedno miejsce.
Blokowanie bezpośredniego dostępu do plików:
defined('_JEXEC') or die('Restricted access');
W pliku index.php zdefiniowana została stała _JEXEC – sprawdzamy czy ona istnieje, a więc czy uzytkownik załadował plik index.php
Blokowanie dostępu do treści niezalogowanym użytkownikom
$user =& JFactory::getUser(); if($user->guest){ // kod dla niezalogowanego } else { // kod dla zalogowanego }
Do zmiennej $user zostaje załadowany objekt (klasy JUser) przechowujący dane a temat zalogowanego uzytkownika. Pole guest przechowuje informacje o tym czy uzytkownik jest zalogowany (boolean)
Informacje o zalogowanym użytkowniku
$user =& JFactory::getUser(); $name = $user->name; // Imię $username = $user->username; // Nick $email = $user->email; // e-mail $id = $user->id; // unikalne ID $lastVisit=$user->lastvisitDate; // Data ostatniej wizyty $registerDate=$user->registerDate; // Data rejestracji $guest=$user->guest; // Czy gość (boolean)
Tworzenie zmiennej do wykorzystania w templatce przy wykorzystaniu modelu MVC
$zmienna='cokolwiek'; $this->AssignRef('zmienna' $zmienna);
Wykorzystanie zmiennej w templatce przy wykorzystaniu modelu MVC
<b><?php echo $this->zmienna; ?></b>
Pobranie wartości z pliku językowego
JText :: _('PLEASE LOG IN');
W odpowiednim pliku językowym zostanie znaleziona poniższa linia oraz pobrana będzie jej wartość. Jest to plik ini
PLEASE LOG IN=Proszę, zaloguj się.
Kolejne pomocne partie kodu będę dopisywł systematycznie.
Pozdrawiam,
Much
adres |
NJowy:
18 Feb 2009 @ 10:40
A sesje ?
Napisz coś o kodzie który pozwoli działać komponentowi na sesjach z joomli ; )