--=REKLAMA=--

Jumi

Z Joomla!WikiPL

Jumi - komplet rozszerzeń umożliwiających osadzanie w Joomla! wykonywalnego kodu. Składa się z komponentu, dodatku i modułu. Artykuł uczy, jak z nich korzystać.

Jumi pomoc.png

Komponent

Komponent Jumi tworzy własne strony Joomla i włącza na nie własny kod z bazy danych albo z z plików.

Komponent dostępny jest w górnym menu zaplecza administracyjnego: Komponenty -> Jumi. Wybranie tego odnośnika otwiera stronę menedżera aplikacji.

Zobaczysz stronę z wykazem aplikacji komponentu. Znaczenie kolumn na liście oraz ??? jest oczywiste - zgodne ze standardami Joomla.

Dysponujemy dwoma preinstalowanymi przykładami: "Hello Jumi!" (Witaj Jumi!) oraz "Blogspot". Przykłady uczą, jak korzystać z komponentu. Pole Ścieżka [Pathname] może zawierać odniesienie do plików umieszczonych tylko na serwerze.

Podłączenie aplikacji

Możesz odwołać się do aplikacji na dwa sposoby:

  • pozycji menu w Joomla! połączonej z aplikacją albo ???
    Po zainstalowaniu komponentu przykładem tego sposobu (przypadku) jest główna pozycja menu Hello Jumi połączona z pozycją aplikacji Hello Jumi
  • wpisany gdziekolwiek w Joomla odnośnik do aplikacji. Reguły tworzenia łącza są proste:
index.php?option=com_jumi&fileid=xxx

gdzie xxx to ID aplikacji Jumi, który można odczytać z kolumny po prawej stronie wykazu aplikacji.

Dodatek

Dodatek Jumi włącza do artykułu Joomla własny skrypt z pliku albo rekordu Jumi w bazie danych.

Zanim użyjesz dodatku, nie zapomnij go włączyć na zapleczu.

W parametrach dodatku jest przełącznik "Hide Jumi code" - "Ukryj kod Jumi". Jeśli ustawisz przełącznik na 'Tak', wszystkie kody Jumi umieszczone w artykułach zostaną ukryte.

Składnia dodatku

Polecenia i składnię dodatku przedstawia Karta użytkownika Jumi. Tutaj przeniesiemy tylko kilka przykładów:

{jumi [images/codes/test.php]} //włącza plik test.php umieszczony w images/codes {jumi [*1]} //włącza kod przechowywany w 1 rekordzie w tabeli bazy danych obsługującej komponent Jumi {jumi area calc [test.php] width[4] height[6]} //włącza plik test.php i wypełnia danymi tablicę $jumi

Z podanych przykładów możesz się łatwo domyśleć, że

  1. Kod musi być umieszczony w nawiasach kwadratowych pomiędzy lewym nawiasem klamrowym i słowem kluczowym jumi oraz prawym zamykającym nawiasem klamrowym. Między nimi nie powinno być żadnych innych znaków
  2. Wszystko, co jest na zewnątrz nawiasów kwadratowych jest pomijane, nie jest przetwarzane
  3. Jumi interpretuje zawartość pierwszego nawiasu jako źródła kodu i włącza go. Źródłem kodu może być plik albo rekord zarejestrowany w tabeli komponentu w bazie danych.
  4. Począwszy od drugiej pary nawiasów Jumi przechowuje w nich elementy tablicy $jumi. Tablica $jumi (i jej wartości) są dostępne we włączonym kodzie php (????? są dostępne dla Twojego kodu PHP).

Domyślna ścieżka absolutna Jumi

Domyślna absolutna ścieżka dostępu jest preparowana z nazwy pliku, który ma być dołączony. Nie powinna znajdować się w macierzystym katalogu Joomla! Na przykład:

Jeżeli piszemy

{jumi [test.php]}

a ścieżka absolutna nie jest określona w parametrach ogólnych dodatku, to najpierw sprawdzany jest macierzysty katalog Joomla (ten, w którym zwykle znajduje się plik configuration.php). Ale jeśli ustawimy ścieżkę na "images/mojekody", to zostanie przeszukany ten katalog.

Nasze pliki możemy umieścić także na zewnątrz katalogu instalacyjnego Joomla!. Przykładowo, jeśli na serwerze lokalnym mamy Joomla w "D:/xamp/htdocs/joomla", nie ma najmniejszego problemu, aby przechowywać swoje kody w "D:/xampp/htdocs/kody", czyli na zewnątrz katalogu instalacyjnego Joomla. Podobnie na serwerach zdalnych.

Domyślna absolutna ścieżka dostępu Jumi ustalana jest z dwu powodów:

  1. komfort użytkownika: nie ma potrzeby wielokrotnego wpisywania pełnej względnej ścieżki dostępu do włączanych plików
  2. bezpieczeństwo www: jeśli z jakiegoś powodu Jumi nie zadziała, kod składni Jumi będzie widoczny dla odwiedzających, a zawiera ścieżkę do pliku. Domyślna ścieżka absolutna jest ukryta, co utrudnia odkrycie rzeczywistego położenia pliku. A jeśli pliki znajdują się poza katalogiem www, praktycznie niemożliwe jest dotarcie do nich z poziomu przeglądarek internetowych.

Domyślna ścieżka absolutna jest parametrem globalnym odnoszącym się do wszystkich instancji składni Jumi w całym Joomla!.

Zagniżdżenia

Funkcja zagnieżdżania interpretuje składnię Jumi we włączonym kodzie. Na przykład:

Możemy mieć dwa pliki: glowny.php i zagiezdzony.php.

Plik glowny.php zawiera kod:

<?php
echo "To jest mój plik główny<br />";
echo "{jumi [zagniezdzony.php]}";
?>

A plik zagnieżdżony.php zawiera:

<?php
echo "To jest zagnieżdzony skrypt";
?>

Po przesłaniu obu plików na serwer możemy napisać w artykule:

{jumi [main.php]}


W efekcie powinniśmy zobaczyć:

To jest mój plik główny
{jumi [zagniezdzony.php]}

jeżeli przełącznik Zastąp zagnieżdżone ustawiony jest na Nie, albo

To jest mój plik główny To jest zagnieżdzony skrypt


w przypadku, gdy przełącznik jest ustawiony na Tak.


To oczywiste, że zagnieżdżanie funkcji przynosi programistom dość interesujące możliwości.

Funkcja zagnieżdżanie działa tylko w dodatku Jumi. Funkcja zagnieżdżanie działa tylko w odniesieniu do plików i kodu przechowywanego w bazie danych tabeli komponentu Jumi

Moduł

Moduł Jumi umożliwia wykonanie w dowolnej pozycji modułów własnego skryptu PHP umieszczonego w pliku albo jako rekord w tabeli komponentu Jumi w bazie danych.

Parametry modułu

Moduł ma kilka parametrów podstawowych widocznych na zapleczu: "Notepad" ("Notatnik"), "Code written" ("Wpisz kod") oraz "Source of code" ("Źródło kodu").

"Notatnik" jest - jak mówi nazwa, miejscem na notatki, które mogą spełniać tę samą rolę, co komentarz w kodzie. W polu "Wpisz kod" możesz zapisać własny kod, który będzie przechowywany w bazie danych (w tabeli modułów!). W polu "Źródło kodu" umieszczasz ścieżkę dostępu do pliku z kodem do wykonania albo id pozycji komponentu w aplikacji Jumi.

Parametry rozszerzone

Domyślna ścieżka dostępu Jumi ma dokładnie to samo znaczenie, co w dodatku, z jedną drobną różnicą: w tym przypadku parametr nie jest globalny, nie dotyczy więc wszystkich wystąpień (instancji) Jumi, a odnosi się do konkretnego modułu. Dla każdego modułu można więc ustalić unikalną ścieżkę dostępu.

Inne parametry rozszerzone - Przyrostek klasy CSS modułu oraz Czas przechowywania w pamięci podręcznej są typowymi parametrami Joomla!. Ich znaczenie jest więc zapewne czytelne.

Przykłady

Aby szybko przetestować działanie modułu, wpisz w polu "Source of code" ("Źródła kodu") *1. Nic więcej nie jest wymagane. Następnie opublikuj moduł w jakiejś dostępnej pozycji. W module w części frontowej witryny powinien być widoczny efekt przykładowego modułu - napis "Hello Jumi!" (Witaj Jumi!).

Dziękujemy za wkład

» Stefan Wajda [zwiastun],