Crearea și utilizarea funcțiilor, drupal

Crearea și utilizarea funcțiilor, drupal
Prima parte a ciclului despre caracteristici - funcționalitate în Atrium deschis.

Luați în considerare utilizarea "caracteristicilor" în exemplu. Avem o sarcină de a adăuga site-ului posibilitatea de a plasa un rezumat în funcționalitate minimă. Pentru aceasta avem nevoie de:







  • un nou tip de material cu câmpurile necesare;
  • Afișează afișează afișări
  • abilitatea de a sorta rezultatele (facem un filtru expus);
  • elementul de meniu pentru a vedea CV-urile deja create;
  • bloc cu cele mai recente posturi vacante.

Soluție cu caracteristici

Sarcina este că acum este necesar să o rezolvăm. Nu vom descrie cele mai adevărate adevăruri aici, vom atinge numai utilizarea "caracteristicilor", restul va implica faptul că este deja gata sau îl vom crea pentru site-ul obișnuit al Drupal.

  • Opțiunea 1: Am pus Drupal curat, adăugăm modulele necesare și configurăm funcționalitatea necesară.
  • Opțiunea 2: deja avem această funcție, pe care am creat-o acum un an pentru un alt site. Pe acest site, totul este deja instalat și configurat.

Pentru ambele opțiuni, ar trebui să avem ceva de genul:

  • Tip de material pentru a adăuga un CV
    Crearea și utilizarea funcțiilor, drupal
  • Câmpurile obligatorii create cu CCK (acestea pot diferi pentru diferite site-uri, astfel încât în ​​a doua variantă este posibil să aveți un set diferit de câmpuri diferite)
    Crearea și utilizarea funcțiilor, drupal
  • Element de meniu
    Crearea și utilizarea funcțiilor, drupal
  • Prezentări necesare: o pagină cu rezumat, un bloc cu cel mai recent rezumat. Aici puteți vedea o mică greșeală - formularul se numește vacanțe și afișează un rezumat. Aceasta nu este doar o tipografie, ci date reale. Site-ul în care este afișat CV-ul poate, de asemenea, să înregistreze posturile vacante, diferența dintre funcțiile vacante din CV-uri în numele câmpurilor CCK, numele meniului și câteva lucruri mici. Prin urmare, putem crea o reluare a unei funcții de module. Apoi schimbați numele și salvați ca un nou modul de posturi vacante, aceasta este o economie de timp. În timp ce ne vom concentra doar asupra funcționalității noastre de reluare, vom corecta această eroare mai târziu.
    Crearea și utilizarea funcțiilor, drupal

Acum, trecem la crearea unui nou modul de caracteristici (/ admin / build / features / create). Numele modulului trebuie să fie vorbitor de limbă engleză cu litere mici (numele funcțiilor vor fi identice cu numele modulului.

Crearea și utilizarea funcțiilor, drupal

Aici selectăm tot ce este inclus în funcționalitatea modulului nostru viitor:
În partea stângă există o listă de selecție - Adăugați componente. în care modulele sunt compatibile cu funcțiile. Folosind casetele de selectare, selectăm tot ce avem nevoie și în același timp apare un tabel cu componentele selectate la dreapta.

Imaginea de ecran afișează lista dependențelor modulelor pe care nu sunt selectate componente în același timp, există deja o listă a cărei nouă modul va fi în partea dreaptă. Toate aceste componente sunt adăugate automat. astfel încât la acest pas trebuie să avem grijă numai de conectarea propriilor module, dacă există.

Faceți clic pe butonul Descărcați caracteristici și salvați arhiva împreună cu modulul.
Suntem gata să primim modulul necesar pentru crearea unui CV pe orice site. Tot ceea ce este acum necesar pentru a implementa noua funcționalitate este să despachetați arhiva și să o includeți în panoul de administrare.

Să vedem din interior la noul modul







După despachetarea arhivei, vedem 6 fișiere (fișierele încep cu numele pe care l-am întrebat atunci când am creat "caracteristica", deci avem nevoie de un nume în limba engleză)

  • rezume.info
  • rezume.module
  • rezume.features.inc
  • rezume.defaults.inc
  • rezume.features.node.inc
  • rezume.features.views.inc

Rezumatele fișierelor rezume.info și rezume.module sunt familiare, sunt fișiere standard ca orice alt modul.

rezume.info - descrierea modulului

rezume.module - modulul propriu-zis. Deoarece avem funcționalități de bază, nu există funcții, ci doar conexiunea fișierului în care descrierea "caracteristicii" este blocuri, vizualizări, meniuri și așa mai departe. Dacă aveți nevoie de funcționalitate suplimentară, o puteți adăuga în acest fișier.

rezume.features.inc - asamblare a funcționalului, constă din mai multe HUK-uri
hook_content_default_fields # 40; # 41;. hook_node_info # 40; # 41;. hook_user_default_permissions # 40; # 41;. hook_views_default_views # 40; # 41; .
Fiecare dintre HUK-urile conectează fișierul necesar și apelează o funcție pentru a adăuga vizualizare, blocuri, permisiuni și așa mai departe.

Fișierele rezume.defaults.inc. rezume.features.node.inc. rezume.features.views.inc este inițializarea setărilor implicite și crearea funcțiilor.

În principiu, nu este nevoie să atingem aceste fișiere, deoarece totul este deja configurat și are o vedere completă, dar uneori este necesar să se corecteze sau să se adauge funcționalități.
În acest stadiu, trebuie să ne corectăm greșeala în numele reprezentării Viziuni.
deschideți fișierul rezume.info și schimbați linia

în fișierul rezume.features.views.inc modificați

Acum totul este corect.

Revenire la punctul de control

Modulul Features, împreună cu sistemul de control al versiunilor (de exemplu, SVN), vă permite să implementați "puncte de control" și apoi să reveniți la starea anterioară. Să continuăm să lucrăm cu modulul nostru și să ne imaginăm că site-ul a funcționat o vreme și administratorii site-ului au "ajustat" treptat tot ceea ce au văzut în panoul de administrare, iar modulul nostru, de asemenea, a căzut sub aceste schimbări.

Includeți modulul de pe site și modificați-o în Afișări vizualizează afișarea paginii de ieșire a CV-ului de la stilul de tabel la nod (starea anterioară este văzută în imaginea de mai sus)

Crearea și utilizarea funcțiilor, drupal

Pentru un timp funcționează și în această formă, dar mai târziu oprește administratorii și doresc să se întoarcă la vizualizarea tabelului și o listă mai compactă. În cazul în care să conducă și ceea ce nimeni nu își amintește, de regulă, câțiva oameni în timpul anului și fiecare câte puțin.

În cazul unui modul de caracteristici, chiar și o astfel de situație controversată nu este chiar atât de teribilă. Mergem la pagina Funcții și vedem modulul nostru, de asemenea, este marcat de statutul de Overridden. ceea ce înseamnă că a fost schimbat.

Crearea și utilizarea funcțiilor, drupal

Faceți clic pe linkul Suprascris și pe această pagină vedem că au fost efectuate modificări la vizualizările Vizualizări.

Crearea și utilizarea funcțiilor, drupal

Pentru a reveni la starea anterioară, trebuie să setați caseta de selectare de lângă Vizualizări și să faceți clic pe butonul Revenire componente. confirmă în continuare dorința de a reveni la setările implicite. Ca rezultat, revenim la punctul de vedere pe care l-am salvat în fișier.

Puteți merge mai departe și a instala SVN, și după efectuarea de modificări la modulul-caracteristica, acesta (butonul Recreează Caracteristici) recrea și înlocuiți fișierele cu altele noi care săvârșesc aceste modificări SVN. Și acum ne putem întoarce în orice moment al schimbărilor noastre, atât înapoi în timp, cât și înaintea acelor schimbări de la care am refuzat.

Cred că după ce am citit această notă, toată lumea va face pentru sine ieșirea în ce scop puteți utiliza funcția modulului.

De fapt, tot ceea ce este descris mai sus este doar un mic exemplu pentru salvarea funcționalității în fișierele modulului. Prin urmare, în plus față de stabilirea stadiului actual al funcționalității, puteți, de asemenea, să realizați pentru dvs. o arhivă a evoluțiilor care ar putea fi utilizate în proiecte viitoare.

De exemplu, puteți crea bloguri, galerii foto, știri, articole și multe altele și salvați aceste funcții în module de caracteristici separate.

Acum ai că ar crea o galerie foto pe noul site pentru a despacheta modul, galerii foto și o activați în panoul de administrare a modificărilor trebuie să se facă la un adăugare minim sau a elimina câmpuri reajustarea Views - rula Galeria foto funcțională este la 5 minute de forța.

Am fost livrat cu trăsături. Prima impresie este că totul este destul de lent. A trebuit să mărească timpul maxim de execuție de la 30 de secunde la 2 minute. Am aproximativ 300 de module pe site-ul de testare.

În al treilea rând. Nu am înțeles, este necesar să includem modulul funcțional în modulul / modulele / modulele admin? pentru că fără ca aceasta să funcționeze, dacă accesați pagina admin / build / features și o activați, funcția va fi instalată.

În al patrulea rând. Este posibil să se facă dependențe? Ie Vreau să fac, să zic, un cadru, un șasiu, pe care se va regla restul funcționalității. De exemplu, un pat - este configurația modulului de incluziune dblog ca intrări de jurnal pentru a stoca în tabel, setările de includere imagapi calitate jpeg 90% și utilizarea ImageMagic în loc de HG. Fac un cadru de trăsături, în care precizez toate modulele de configurare. Apoi, vreau să te fac să-CV, care va indica faptul că aceasta depinde de cadru, iar apoi se va relua în Imagecache generit miniaturi relua automat după ImageMagic. Dacă specificăm o dependență de modulul caracteristica stanina din fișierul .info al modulului rezumat, atunci când îl instalez, acesta include modul stanina. Nu este necesar, este necesar ca modulul să nu o includă, dar instalează caracteristica stanina.

În al cincilea rând. Cum se instalează serverul de caracteristici? Ceva nu am gasit o legatura cu modulul server de pe drupal.org.

Crearea și utilizarea funcțiilor, drupal

Nou pe forum

Conținutul site-ului este publicat pe termenii CreativeCommons Attribution-ShareAlike 3.0 sau o versiune ulterioară
Codurile programului din textul articolelor sunt GNU GPL v2 sau mai târziu.
Drupal este o marcă comercială a lui Drissa Bitaerta







Articole similare

Trimiteți-le prietenilor: