3. Stručný úvod do terminologie Drupalu -co je modul, node, taxonomy ...?

Nyní již máme nainstalovaný Drupal, v prohlížeči se ukazuje domovská stránka. Než se ale pustíme do samotné konfigurace Drupalu a tvorby stránek, je třeba si projít pár věcí. Zatím jen v krátkém seznámení, detailněji se k nim dostaneme v dalších kapitolách.

Co je: Drupal core - jádro

Drupal core - tedy jádro Drupalu - se označuje plný základ, ze kterého Drupal vychází. Tedy základní skripty, konfigurační soubory, PHP a JS knihovny ... 

Co je: Drupal module - moduly, rozšíření

Modul je "balíček" (adresář se soubory), který přináší nějakou funkcionalit. Dělíme je na tři skupiny:

Aby byl modul funkční, musí být aktivní (nainstalovaný). Některé moduly mohou být závislé na jiných, které třeba povolit nejdříve.

Co je: Drupal theme - šablony vzhledu

Vše, co si připravíme v Drupalu na pozadí v administraci, chceme zobrazit návštěvníkům. Jak to bude vypadat, ovlivňuje právě theme, tedy šablony vzhledu. Podobně jako u modulů jsou tři druhy šablon:

Každé téma má definované své regiony, tedy oblasti jako hlavička, patička, sidebar ...

Témata se běžně používají dvě - jedno pro administraci (tzv. back-end theme) a jedno pro samotné zobrazení stránek (tzv. front-end theme)

Co je: entity

V Drupalu je entita základní jednotka nějaké struktury, jako je node, user, bloky, položky menu ... Entitám mimo jiné běžně definujeme políčka  https://www.drupal.org/docs/user_guide/en/planning-data-types.html

Co je: node

Node značí v Drupalu tzv. uzel. Každý node je unikátní a má tedy unikátní číslo (id), z Drupal 7 často  značené jako nid. Na každý node (uzel) se pak dá dostat pomocí adresy node/nid. Node většinou znamená stránku, ale ta může být vytvořená i jinak (taxonomy termy, Views page ...). Většinou ale stránkou myslíme právě node (uzel).

Co je: taxonomy, vocabulary

Taxonomy si můžeme představit jako nějaké atributy, podle který si můžeme třídit náš obsah, něco jako tagy, kategorie. Taxonomy term je vždy součásti nějakého Vocabulary - slovníku. Vocabulary může mít např. jméno Města nebo Země. Taxonomy term ze slovníku Města může mít jméno Praha, Brno, Ostrava ... Součástí informací o Taxonomy term může být třeba webová adresa města, jeho logo, počet obyvatel ... A uzel (node) pak můžeme provázat s informací o městě, kterého se týká. Nebo uživatele, odkud pochází.

Co je: field

Políčko je nějaká informace, kterou můžeme uložit k danému nodu nebo taxonomy termu nebo uživateli... Tedy k libovolné entitě. Základní typy políček už přináší Drupal core - např. textové pole, pole obrázku, odkazy... Různé moduly pak mohou přinášet další typy - např. YouTube video.

Políčko má většinou nějaké své nastavení (např. jestli má mít jednu nebo neomezeně hodnot), a pak většinou také, jak se má zobrazit. Např. políčko image můžeme zobrazit opravdu jako obrázek, nebo jen jako odkaz na soubor. Anebo také vůbec nezobrazovat, pokud toto políčko použijeme nějak jinak.

Jednou vytvořené políčko můžeme použít i jinde. Ale pozor, některé nastavení (Field settings) je společné pro všechny taková políčka.
.

Co je: block

Bloky jsou malé kousky obsahu, které můžeme různě umisťovat na stránky. Např. blok s výpisem menu.

Obsah bloku se může lišit např. podle různého nastavení, např. podle oprávnění - pro nepřihlášeného uživatele se ukazuje v bloku přihlašovací formulář, po přihlášení se tam ukáže jméno uživatele a link k odhlášení.

Existují předdefinované bloky, nebo si lze nové bloky snadno vytvořit. Můžeme si nadefinovat vlastní typy bloků, podle našich potřeb
.

Co je: View

View je výpis nějakých informací, třeba výpis naposled přihlášených uživatelů nebo nejčtenějších článků. U každého View si můžeme vybírat, jaká políčka (Field) si chceme zobrazit. A opět i jak má takové políčko vypadat. Navíc si můžeme přidávat nějaké vlastní filtry, např. jak se mají výsledky řadit, vyhledávat v nadpisech článků ... 

Výstupem View být např. tabulka, HTML list nebo dokonce třeba csv soubor. Výchozí výstupy (nejenom) se dají rozšířit pomocí různých contrib modulů.

Co je: Composer, Drush, Drupal Console

V této knize se věnujeme začátečníkům pracujícím s Drupalem. Zkušení uživatelé používající Linux a příkazovou řádku mohou využívat nástrojů pro usnadnění různých úkonů.

Composer

https://getcomposer.org/

Composer je "A Dependency Manager for PHP". Jelikož Drupal je PHP aplikace, může používat právě composer na stažení souborů různých modulů a automatické řešení závislostí mezi nimi.

Drush

https://www.drush.org/
https://docs.drush.org/en/master/
Drush is a command line shell and Unix scripting interface for Drupal. 

Drush je "aplikace" pro snazší a rychlejší operace s Drupalem. Umí například instalovat / odinstalovat moduly stažené např. composerem. Dokáže jednoduše spouště Drupal cron, nebo libovolné skripty. Umí vygenerovat link pro reset hesla, a ještě asi milion dalších věcí.

Velkou výhodou Drushe je, že jednotlivé moduly mohou obsahovat definici příkazů pro Drush. 

Drupal Console

https://drupalconsole.com/
The Drupal CLI. A tool to generate boilerplate code, interact with and debug Drupal.

Drupal Console je opět určená pro pokročilé uživatele a Drupal developery. Umožňuje např. velmi snadno generovat modul a jeho strukturu adresářů a souborů. Některými funkcemi se částečně překrývá s Drushem, např. instalací modulů.

Drupal Console v současné době (červenec 2020) nefunguje pod Drupal 9, jen pod Drupal 8.

 

Nyní se již můžeme pustit prozkoumávat naši instalaci Drupalu.

 

 

 

Začínáme s Drupalem 9