Articles

U ovom tutorijalu ćemo pogledati kako programski prikazivati blokove kroz prilagođeni modul u Drupalu 8.
Primere koda možete pogledati na github-u:
https://github.com/levmyshkin/drupalbook8
Počnimo sa dodavanjem fajla koji sadrži PHP klasu, blokovi se u Drupalu kreiraju kroz prilagođeni modul na ovaj način. Proces pravljenja fajla je isti kao i za klasu stranice, kao što smo radili ovde:


U ovom tutorijalu bavićemo se Drupal Form API-jem i kreirati formular za podešavanja modula. Već smo napravili module za prikaz stranice i bloka, sada ćemo napraviti konfiguracioni formular u koji ćemo smestiti podatke za povezivanje sa uslovnom uslugom. Recimo da na sajtu treba da sačuvamo API ključ i API Client ID, na primer za Google Maps API.
Primere koda možete pogledati na github-u:
https://github.com/levmyshkin/drupalbook8


U jednoj od prethodnih lekcija smo naučili šta su hook-ovi, a u ovoj lekciji ćemo raditi sa hook_form_alter() hook-ovima u praksi i dodati funkcionalnost postojećem formularu.
Primere koda možete pronaći na github-u:
https://github.com/levmyshkin/drupalbook8
U ovoj lekciji ćemo početi da gledamo hook-ove u praksi, kasnije ćemo se vratiti hook-ovima i pogledati još nekoliko primera. Za sada, hajde da počnemo sa hook_form_alter().


U ovom članku nastavićemo da razumemo Form API u Drupalu 8 i napraviti višestepeni formular. Već smo napravili uobičajeni konfiguracioni formular za modul, višestepeni formular se pravi na sličan način koristeći $form_state za čuvanje podataka između koraka formulara.
Primere koda možete pronaći na github-u:
https://github.com/levmyshkin/drupalbook8
Za višestepeni formular potrebno je dodati klasu formulara:
/modules/custom/drupalbook/src/Form/MultiStepForm.php


Konfiguracija u Drupalu je osnova za sva podešavanja tipova sadržaja, polja, konfiguracionih formi i promenljivih. Pomoću konfiguracije možemo prenositi izmene sa jednog sajta na drugi, razvijati različite funkcionalnosti paralelno i bez međusobnog ometanja.
Konfiguracije se mogu sačuvati u YML fajlovima i dodati u Git repozitorijum, tako da možete sačuvati izmene u podešavanjima sajta i preneti izmene na Dev ili Live. Ideja konfiguracije u Drupalu je slična načinu rada Features modula:


Kada uvozite konfiguraciju sa jednog sajta na drugi, neke konfiguracije su potrebne za prikaz sadržaja, ali sama konfiguracija sadržaja ih ne sadrži. U ovom tutorijalu objasnićemo kako da prenesete blokove, nodove i taksonomijske termine sa jednog sajta na drugi.


Veoma često pristup servisima trećih strana mora da bude različit na razvojnoj i produkcionoj instanci. Da biste to ostvarili pomoću konfiguracija, potrebno je koristiti modul Configuration Split:
https://www.drupal.org/project/config_split
Nakon što omogućite Config Split modul, moći ćete da navedete foldere za instance. Idemo na stranicu podešavanja Configuration Split u okviru modula Configuration:
/admin/config/development/configuration/config-split


U ovom članku ćemo razumeti kako polja u Drupalu funkcionišu, zašto su potrebna i kako polja pomažu da se brzo razvijaju sajtovi u Drupalu.
Već smo radili sa poljima u prethodnim člancima:


U ovom tutorijalu ćemo pogledati kako funkcioniše Field Widget modula Link. Ovo je pregledni članak, pa ako želite početi da pišete svoj File Widget, preskočite na sledeće članke.
U poslednjoj lekciji smo dodali Link polja za nodove i blokove. Sada ćemo pogledati kako se formira forma za Link polje.
Već smo se upoznali sa automatskim učitavanjem PHP klasa u Drupalu, a postoji i klasa WidgetBase za field widget polja:
core/lib/Drupal/Core/Field/WidgetBase.php


U ovom članku razmotrićemo Field Formatter-e, koji nam omogućavaju da uređujemo prikaz polja i prikazujemo ih na stranici.
U prethodnim člancima smo kreirali tip polja Link, u ovom članku ćemo pogledati kako se ta polja prikazuju na stranici i koja klasa je za to odgovorna. Svako polje koje dodate putem Drupala može se prikazati na stranici i uređivati njegova podešavanja na stranici Manage display.
