Přejít k hlavnímu obsahu

Drupal komunita nespí a maká. Pořádá pravidelné konference, radí a odpovídá na dotazy. A vyvíjí nové verze!

Novinky v Drupalu 8

  • využívá Symfony2 framework
  • OOP přístupy integrovány do jádra
  • REST webové služby
  • PHPUnit testy
  • zmenšení jádra Drupalu, osamostatnění a oddělení některých modulů
  • nativně responzivní design
  • HTML5 struktura
  • lepší oddělení konfiguračních dat od obsahu
  • kvalitnější uživatelské prostředí

Základním stavebním kamenem a největší výhodou Drupalu je jeho modularita. Díky tomuto přístupu se jedná o velmi flexibilní systém, který si lze rychle přizpůsobit vlastním potřebám. Zároveň díky rozsáhlé komunitě a GPL GNU licenci, pod kterou Drupal vychází, je možné využívat obrovskou sbírku dostupných a otestovaných modulů.

Jistě to také znáte. Přijdete ke kódu, který zůstal po vašem kolegovi-předchůdci a po prvním studiu zápisu kódu s pláčem nebo nadávkami schováváte hlavu do dlaní. Vývojáři Drupalu bojují proti kreativitě v zápisu kódu pomocí Coding Standards. Jedná se o sérii více či méně důležitých pravidel pro správnou syntaxi a dobrou čitelnost kódu. Více na https://drupal.org/coding-standards

K provozování Drupalu je potřeba webový a databázový server. Obojí samozřejmě možno i v open source řešení, tedy žádné náklady na licence. Pro Drupal je minimálním požadavkem PHP 5.2.5 (5.3 doporučeno), pro Drupal 8 je minimálním požadavkem verze 5.4.

Drupal nativně spolupracuje s databázemi MySQL 5.0.15 nebo vyšší, PostreSQL 8.3 nebo vyšší, SQLite 3.3.7 nebo vyšší. Microsoft SQL Server či Oracle jsou podporovány díky dodatečným modulům.

Pokud se zaměřujete na velké a komplexní projekty, je SASS nedocenitelným pomocníkem. SASS je CSS preprocesor, díky kterému se vývoj CSS stává rychlejší, přehlednější a kompaktnější. Mezi jeho hlavní funkce patří:

Variables (Proměnné) – Pokud pak chcete např. změnit barvu 15 prvků, nemusíte hledat 15 CSS selektorů, prostě přepíšete hodnotu proměnné.

Nesting (Zanořování) – Nemáte rádi nekonečně dlouhé selektory, které z většiny obsahují selektor nadřazeného prvku? Zanořte selektor dovnitř. 

Partials (Části) – Vytvořte si parciální části, obsahující CSS, které pak můžete vkládat do jiných souborů. Zajistíte tak modularitu a přehled. 

Operators (Operátory) – Jednoduše vám dovolují zadávat matematické výrazy do hodnot CSS

Mixins  - Jistě jste se setkali s CSS3 výrazy, které jsou pro každý prohlížeč rozdílné. Díky této funkci je sjednotíte do jednoho zápisu. Jeden příklad, který názorně vysvětlí vše:

@mixin border-radius($radius) {
  -webkit-border-radius: $radius;
     -moz-border-radius: $radius;
      -ms-border-radius: $radius;
          border-radius: $radius;
}

.box { @include border-radius(10px); }

Extend/Inheritance (Rozšíření/Dědění) – Možnost nadefinovat základní nastavení elementu. A poté např. podle různých tříd měnit nastavení.

Ačkoli na vodě může být háček nepopulární, ve světě Drupalu je a esenciálním základem všeho. Hook (česky tedy háček) přesně vystihuje, jak jádro Drupalu obsluhuje veškeré moduly. Při zpracování požadavku (zobrazení stránky, uložení článku, smazání přiloženého souboru,…) jádro postupně prochází seznam háčků a dává šanci každému povolenému modulu, aby se „zaháknul“ v případě, že modul tento háček implementuje. Háček jako takový si lze představit jako událost, např. hook_user_delete se volá při smazání uživatele.

Jádro Drupalu samo o sobě poskytuje obrovské množství těchto háčků (seznam zde: https://api.drupal.org/api/drupal/includes%21module.inc/group/hooks/7), ale samozřejmostí je možnost implementace vlastního háčku a tím odchytávání a zpracování událostí, které jsou důležité pro vaši aplikaci.

Drupal nabízí spoustu modulů pro práci s formuláři (přičemž nejznámější je Webform https://drupal.org/project/webform), ale při vývoji řešení na míru oceníte i dvě další funkce, které se vám budou hodit.

Háčky hook_form_alter a hook_form_validate vám umožní si automaticky upravovat vygenerované formuláře Drupalem (a to jak hromadně formuláře určitého typu, tak jednotlivě s využitím hook_form_FORM_ID_alter), zároveň nabízí jejich speciální validaci.

Média vládnou světu a Drupal vládne médiím! Vytváření galerií, úpravy obrázků, drag n drop nahrávání, spolupráce se vkládáním videí mnoha poskytovatelů, audio přehrávače, exporty do RSS, dokonce i modul pro internetové rádio vysílání. K tomu přidejte spolupráci se sociálními sítěmi, moduly pro hodnocení obsahu a můžete si díky Drupalu vytvořit mediální portál. Na tohle je Drupal opravdu dobrý!

Nikdo nerad čeká na načtení stránky. Vypovídá o tom i fakt, že čím pomalejší web je, tím menší je jeho schopnost přinášet zisk. Existuje mnoho metodik, jak zrychlit načítání webu a jednou z nich je i nákup výkonnějšího železa. Pokud ale využíváte Drupal, celý problém lze řešit z daleko menšími náklady: naši specialisté umí nastavit systémy cacheování obsahu stránek, díky čemuž budete využívat váš hardware efektivně a nebude nutné přikupovat další. Konkrétně Drupal podporuje Content Delivery Network (CDN)cacheování statického obsahu nebo třeba agregaci javascriptových a CSS souborů.

Jak již bylo nespočetněkrát zmíněno, Drupal je modulární systém. Jeho variabilita tedy nezná hranic. Drupaloví nadšenci však dostali geniální nápad připravit distribuce s předinstalovanými moduly. Časem vzniklo mnoho distribucí zaměřených na určitou sféru. Díky tomu lze zrychlit vývoj komplexních řešení. Mezi kategorie, na které se distribuce zaměřují, patří zpravodajství, intranety, e-shopová řešení, sociální weby, mediální obsah a mnoho dalších.