După cum știți, Ajax este o tehnologie specifică pentru schimbul de informații de fundal între browser și server fără a reîncărca întregul conținut al paginii. Descrieți tehnologia în sine și cum funcționează, nu voi mai exista suficiente articole pe această temă. Luați în considerare utilizarea tehnologiei ajax pentru Joomla 2.5 CMS utilizând JQuery (aceasta este una dintre opțiunile cele mai simple, plus o platformă cross-platformă).
- Ajax fără utilizarea cadrului Joomla (toate funcțiile, de exemplu, lucrul cu baza de date, obținerea de informații despre scrierea de către utilizatori)
- Ajax + Joomla 2.5 framework (putem folosi jumla API, de exemplu, pentru a obține informații despre utilizator, putem folosi în siguranță codul: $ user = JFactory :: getUser)
- Ajax + utilizarea completa a tuturor functiilor Joomla 2.5, incluzand MVC (controller view-model)
Ajax fără a utiliza cadrul Joomla 2.5
De asemenea, undeva în șablon, componenta sau modul, introducem butonul
fișierul ajax.php, de exemplu, arată astfel
Ca rezultat, când faceți clic pe butonul "Faceți clic aici", va fi trimisă o solicitare "POST" cu datele "mydata = data" pe server. Serverul va deschide fișierul "ajax.php", în care puteți scrie orice cod în PHP și toate informațiile afișate pe ecran vor fi transferate pe site-ul dvs. în variabila "tut_dannye_ot_servera". Apoi, folosind funcția jquery ".replaceWith ()", puneți conținutul variabilei în locul în care eticheta cu id = # korzina a fost anterior.
În această versiune a mecanismului Joomla 2.5 + ajax, noi, din păcate, nu putem folosi toate farmecele care ne dau cadrul Joomla. Toți trebuie să scrie cu propriile stilouri.
Ajax + Joomla 2.5
Cu această implementare, totul rămâne, ca și în versiunea anterioară, doar fișierul ajax.php va arăta diferit
Acum putem folosi API-ul Joomla 2.5
Ajax + utilizarea completa a tuturor functiilor Joomla 2.5, incluzand MVC (controller view-model)
Pentru a nu crea module inutile, dar ar fi clar cum funcționează totul, să luăm în considerare acest exemplu pe modulul "Breadcrumbs". Este afișat în șablonul principal "Beez_20" în poziție
nu trebuie să-i schimbăm codul. Modelul "Atomic" va fi modificat astfel încât să arate astfel:
Funcția care inițiază interogarea pe ajax va arăta astfel
După cum puteți vedea, funcția a schimbat datele trimise (trimitem un alt șablon), de asemenea un loc pentru a pune rezultatul (.breadcrumbs). Și cel mai important, fișierul care va fi deschis atunci când serverul cere "index.php".
Ca rezultat, veți vedea că atunci când apăsați pe butonul care inițiază cererea, conținutul "Breadcrumbs" se va schimba.
Imaginați-vă că în loc de "Breadcrumbs" aveți un coș de ordine. Cu această abordare, nu este nevoie să scrieți un cod diferit care să îl dea în mod obișnuit și prin ajax. Este suficient să aveți un anumit șablon pe care Joomla îl va utiliza pentru a trimite rezultatul. Astfel, nu este necesar să se producă șabloane pentru fiecare modul. Totul poate fi implementat într-un singur șablon.