Principiile modului

Continuăm la cele mai interesante - întinderea șabloanelor pe MODx. Pentru a începe, trebuie mai întâi să înțelegeți modul în care parserul MODx funcționează. Anterior, atunci când site-urile au fost doar incepand de a face dinamice, coduri HTML, JS, CSS si PHP au fost amestecate, ceea ce face dificil de înțeles lucrările de sistem și codul a fost extrem de imposibil de citit (de fapt, din moment ce timpul nu este de mult că sa schimbat, uita-te la Wordpress cod șablon sau Joomla! ). De exemplu, a fost astfel:







Logica MODx sparge controlerul și afișarea, adică dacă avem PHP în cod, atunci nu ar trebui să existe cod HTML.

Lucrarea parserului MODx este foarte simplă - caută șabloane și bucăți cu etichete unice și le înlocuiește cu valori specifice. Dacă vă imaginați un exemplu în PHP, veți obține ceva de genul:

O resursă este o abstractizare a MODx. În principiu, paginile site-ului, dar pot fi și documente TXT, documente XML. Conținutul resursei poate conține etichete MODx.

Un șablon este un cod HTML care poate conține etichete MODx. Șablonul este legat de resursă, resursa este trimisă exact așa cum se face marcajul din șablon. Atunci când creați resurse și le vizualizați și, în schimb, veți vedea, de exemplu, pagina principală, atunci merită verificată dacă șablonul corect este în resursă.

Chunk este o bucată de cod HTML care conține etichete MODx.

Fragmentul este o bucată de cod PHP. Nu conține etichete MODx.

Un plugin este o bucată de cod PHP care se execută la apariția unui eveniment de sistem. Nu conține etichete MODx.

Parametrul TV - literal, variabila șablonului. Acesta este un câmp de resurse suplimentare.

TagMODx este orice etichetă închisă în paranteze # 91; # 91; și # 93; # 93;

În șabloane și bucăți, parserul MODx caută următoarele etichete:

  • # 91; # 91; * eticheta # 93; # 93; - un câmp tag al resursei, de exemplu antet (# 91; # 91; * PAGETITLE # 93; # 93;) sau conținutul paginii (# 91; # 91; * conținut # 93; # 93;). Aceasta este întotdeauna valoarea paginii curente.
  • # 91; # +; # 93; # 93; - Placeholder, este umplut cu rezultatul lucrării din orice fragment sau plug-in.
  • # 91;% tag # 93; # 93; - tag-ul dicționarului.
  • # 91; # 91;






Este important să rețineți că parserul MODx este un lucru recursiv, va funcționa până când toate etichetele MODx vor dispărea pe ieșire. Prin urmare, nu faceți apeluri mai mult decât cel de-al treilea grad de cuibărit. În caz contrar, site-ul va încetini considerabil.

Modelul standard MODx, până de curând, a arătat astfel:

Integrăm șabloanele de bază din arhiva noastră

Acum trebuie să încărcați fișierele șablon pe server (sau să le copiați în directorul cu site-ul, dacă faceți site-ul local). Pentru a face acest lucru, copiați tot ce se află în folder / assets / template în folder / assets / MODx.

  • Site header (bucată de antet)
  • Futer (subsolul bucății)
  • Scripturi (nu sunt vizibile, dar pentru toate șabloanele vor fi scripturi de o singură bucată)
  • Conținut între etichete (bucata de meta)

Iată codul pentru bucata mea:

Acum, creați antetul "bucăți". În ea vom pune tot codul din etichetă

până la
. Codul este greoi, nu o voi publica.

Creați un "subsol" de bucăți. În el am pus totul de la etichetă

înainte de etichetă
. Codul este greoi, nu o voi publica.

Și creați "scripturi" de bucăți. În el am pus toate scripturile:

Așa că am împărțit șablonul în părți. Acum plasați codul pe care am eliminat în bucăți, introduceți etichetele MODX, care va spune sistemului că aceste locuri trebuie să inserați codul în bucăți. Etichetele sunt după cum urmează:

  • Blog.html (Șablon articole)
  • Blog-post.html (Șablon de postare)

Asta am vrut să descriu în această lecție. Sper că ați reușit!

Evaluați acest articol:

Bine ai venit! A făcut totul conform instrucțiunilor tale. Totul sa dovedit, a fost o problemă. Când fac clic un articol, există un model nu se schimba în șablonul articol el vede ca o „pagina de start“ șablon Am verificat totul, nu pot să înțeleg ce problema este, toate au template-uri potrivite și a creat totul, dar încă nu a lovit, model întotdeauna arată pe site-ul și acestea sunt aceleași ca și în articol că blog-ul, care este principalul ... Ajutor te rog, în ceea ce ar putea fi problema?

Buna ziua, poti sa-mi spui cum sa faci meta. astfel încât să puteți completa metaetichetele cu conținut unic pentru fiecare pagină a site-ului. Același lucru este necesar pentru optimizarea site-ului. Eu încă, din păcate, foarte puțin cunoscut de CMS MODX, până la acest punct tratate cu o mai mare optimizare), de asemenea, nu a specificat dacă există o problemă cu versiuni de pagini MODx? Și, de asemenea, poate că va fi capabil de a consilia cu privire la modul cel mai bine să pună în aplicare căutarea pe site-ul, pentru a evita pagini duplicat utilizând modX.Chut uitat module. Am de gând să fac site-ul pe revoluția modx.

Etichetele Meta sunt implementate folosind parametrii TV. Problema cu duplicatele este ca și în cazul oricărui alt CMS, problema este rezolvată prin prescrierea a 301 redirecționări. Căutarea poate fi realizată atât cu ajutorul mSearch2 plătit, cât și prin simpla căutare gratuită. În general, MODx este un sistem foarte flexibil, atât în ​​ceea ce privește scalarea, cât și în ceea ce privește optimizarea SEO - sfătuiesc cu tărie.







Trimiteți-le prietenilor: