Od Drupalu 7 odvozený redakční systém Backdrop neustále vylepšuje svou funkcionalitu, přičemž zachovává původní jednoduchý kód. Nejnovějším vylepšením plánovaným do verze 1.20 je administrátorovi přístupný systém receptů. Představte si jej jako moduly poskytující místo vlastní funkcionality konfiguraci políček, pohledů, CSS nebo vzorový obsah. To vše na jedno kliknutí.
V Drupalu existoval (a existuje) modul Features, který umožnil vývojářům exportovat určitá nastavení do modulu a následně při jeho instalaci tato nastavení uvést v život. Neměl jsem ho zrovna v lásce a v reálu se na něj vlastně coby tvůrce nijak nespoléhal. Recepty v Backdrop jsou podobného ražení ve smyslu použití, ale mnohem přátelštější z pohledu implementace.
Výsledný recept totiž není nějaký složitý kód v PHP, ale snadno čitelná konfigurace exportovaná do souboru v JSON formátu.
Příklad? Například reference klientů
Představte si, že chcete na webu vytvořit pohled s referencemi klientů. Běžně byste začali tím, že vytvoříte nový typ obsahu Reference, do něj naskládáte políčka pro zadání jména klienta, jeho pozice ve firmě, názvu firmu, fotky a pro text samotné reference. Pomocí Views vytvoříte seznam těchto referencí a případně je necháte proklikávací do detailu.
A teď si představte, že toto všechno si ušetříte, protože jste to absolvovali už u jiného projektu, případně to za vás nachystal někdo jiný a nasdílel pro ostatní uživatele. A nikoli jenom s konfigurací políček, ale i se základním CSS, aby ty reference nějak smysluplně vypadaly.
Ano, tohle všechno do budoucna v systému Backdrop umožní koncept receptů.
Aktuální omezení a další vývoj
V současnosti tyto moduly s nastavením už v Backdropu existují a je jen otázkou, kdy a jak moc se navenek projeví. Jistá omezení této funkcionality jsou spojena s tím, že nastavení poskytnuté recepty nejde jen tak snadno zrušit při odebrání modulu. Musíte ručně smazat všechna políčka a další změny, které daná konfigurace přinesla.
Autoři se potýkají také s tím, jak upravit konfiguraci závisejících modulů, aniž by to vyžadovalo psaní kódu v PHP. Tím by se totiž z receptu stal běžný modul, jako kterýkoli jiný.
Další informace o receptech v Backdropu najdete v článku Config Recipes - A Possible Path Forward a ve vlákně na GitHubu.