Dziecinnie proste tworzenie stron

Zewnętrzne pliki

System amp.cms ma możliwość dołączania do stron i boxów zewnętrznych plików z własnym kodem. Daje to nieograniczone możliwości rozszerzenia funkcjonalności Twojego serwisu. Wstawianie własnego kodu nie wymaga żadnych zmian w kodzie samego silnika CMS. To sprawia, że amp.cms jest jednym z najbardziej elastycznych i uniwersalnych CMS-ów na rynku.

Istnieje kilka sposobów na podstawienie własnego pliku do CMS-a. Generalną zasadą jest, że pliki z zewnętrznym kodem znajdują się w katalogu _user / boxes.

Zwróć uwagę, że zawartość strony podstawiona z zewnętrznego pliku nie jest cache-owana. Spowodowane jest to faktem, że CMS nie wie co znajduje się w tym pliku i od czego zależy jego zawartość. Jeżeli jednak jesteś całkowicie pewny, że kod, który wpisałeś jest statyczny i może zostać zapisany do cache, dodaj do swojego pliku linię:

$this->module_cache = 'n';

Przypominamy, że na czas wprowadzania zmian w kodzie strony, należy wyłączyć cache. Opcja ta znajduje się w części "Nawigacja".

Najprostszy sposób na dołączenie pliku polega na utworzeniu w szablonie znacznika, który, jak każdy inny, ma postać nazwy pisanej wielkimi literami, ograniczonej znakami #. Jeżeli znacznik ten nie jest przypisany do żadnego boxa, grupy boxów, lub ruchomego boxa, zostaje przez silnik CMS zignorowany. Można jednak utworzyć, w wymienionym wcześniej katalogu, plik o nazwie takiej samej, jak nazwa znacznika, ale pisanej małymi literami, z rozszerzeniem .php. Taki plik zostanie wówczas podstawiony w miejsce znacznika. Podobnie, jak w przypadku boxa, zawartość będzie otoczona tagiem <div id="nazwa_znacznika">.

Na takiej zasadzie działa pierwsze proste menu strony, które otrzymujesz zaraz po zainstalowaniu Twojego CMS-a. Wskazany wyżej katalog nie jest pusty. Znajduje się w nim plik menu.php, który zaraz po zainstalowaniu amp.cms podstawiony jest w miejsce znacznika MENU w szablonie. Dopiero dodanie boxa o znaczniku MENU powoduje, że zewnętrzny plik nie zostaje dodany (patrz opis pierwszego uruchomienia amp.cms). Na tym etapie poznania systemu amp.cms, wskazany plik może być świetnym przykładem dla rozpoczęcia pisania własnych podprogramów w środowisku amp.cms.

Drugi, a zarazem podstawowy i najbardziej zalecany sposób dołączania pliku, polega na podaniu jego nazwy podczas edycji strony lub boxa. Formularz dodawania zawiera pole o nazwie "plik", w które należy wpisać nazwę pliku, który ma zostać dołączony. Plik musi znajdować się w wyżej wymienionym katalogu. CMS ma zabezpieczenie przed błędnie wprowadzonymi danymi. Jeżeli plik nie zostanie znaleziony, polecenie dołączenia go zostanie zignorowane.

Kolejność wykonywania czynności przygotowujących wyświetlenie strony lub boxa, została opisana w tej instrukcji na stronie Wygląd i treść.

W analogiczny sposób można dodawać pliki podczas edycji modułów podłączonych do strony lub boxa. Pliki te dodaje się podczas edycji parametrów modułu na stronie lub boxie.



Działanie każdego modułu, który użyty jest na stronach Twojego serwisu, podzielone jest na 2 etapy. Pierwszy odpowiedzialny jest za zbieranie i przygotowywanie danych do wyświetlenia. Dane zbierane są do tabeli o nazwie $data. Drugi odpowiedzialny jest za wyświetlenie danych zawartych w tej tabeli. Moduł posiada swoją standardową część wyjściową, która w określony sposób wyświetla przygotowane dane. Tę część można jednak zastąpić swoim kodem i wyświetlić dane z modułu według własnych potrzeb. Wewnątrz Twojego pliku, który możesz dołączyć tym sposobem, będziesz miał dostępną zmienną $data, która będzie zawierała dane z modułów, przygotowane do wyświetlenia.
UWAGA: Funkcjonalność ta występuje w systemie amp.cms w wersji 8>. W głównym pliku dołączanym do strony lub boxa, nie jest dostępna zmienna $data, zawierająca dane z modułów, jak to miało miejsce w poprzednich wersjach.

Standardowe wyjście modułu jest z reguły dość proste. Składa się głównie z instrukcji służących do wyświetlania. Nie trzeba więc znać zaawansowanych tajników programowania, aby poradzić sobie z przerobieniem istniejącego kodu. Poniżej znajduje się standardowe wyjście modułu MENU:

echo '<ul class="menu">';
foreach ($data as $row) {

   switch ($row['d_int']) {
        case 0: $class = 'menu'; break;
        case 1: $class = 'menuselected'; break;
        case 2: $class = 'menuparent'; break;
        case 3: $class = 'submenu'; break;
        case 4: $class = 'submenuselected'; break;
    }

    echo '<li class="'.$class.'">';
    if ($row['d_lnk']) echo '<a href="'.$row['d_lnk'].'" class="'.
$class.'"'.($row['d_blk']?' target="_blank"':'').'>';
    echo $row['d_str'];
    if ($row['d_lnk']) echo '</a>';
    echo '</li>';
}
echo '</ul>';

Jeżeli potrzebujesz, powyższy kod możesz dowolnie modyfikować, aby dostosować go do własnych potrzeb. Dzięki temu możesz stworzyć własne menu strony, które będzie administrowalne w panelu, ale zyska taki wygląd, jaki będziesz sobie życzyć. Możesz, w miarę potrzeb, uzupełnić je na przykład o skrypt JavaScript, który zapewni rozwijanie wybranych fragmentów.