Drupal a Webform: jak na vizuálního návrháře formulářů v redakčním systému

Potřebujete na svém webu se systémem Drupal vytvářet formuláře? Pak asi znáte modul Webform. Možná ale ne všichni z vás znají také modul Form Builder, který do Drupalu přidá vizuálního návrháře formulářů. Komponenty pak jen stačí přetahovat ze zásobníku.

Modul Webform patří k nejpoužívanějším rozšiřujícím modulům pro Drupal. Umožňuje vám přímo z administrace vyvářet různé formuláře, které čtenáři webu následně vyplňují. Takto posbíraná data jsou na webu uchovávána, je z nich možno provádět export do Excelu a dalších formátů, prohlížet si je ve webovém rozhraní nebo je automaticky odesílat na zadaný e-mail.

Webform má ale pro některé lidi drobnou nevýhodu. Definice políček formuláře pro ně není úplně uživatelsky přívětivá. Když se podíváte na nějaké specializované webové služby pro tvorbu formulářů, obvykle najdete rozhraní, ve kterém přetahujete jednotlivé položky ze seznamu komponent na nějakou plochu a následně vybraným položkám formuláře upravujete jejich vlastnost.

Právě k něčemu takovému slouží i modul Form Builder, který vám ukážu na následujícím videu.

Form Builder samozřejmě není jediné vylepšení Webformu, celou řadu dalších najdete na jeho domovské stránce. Doporučuji například Webform Validation nebo MIME Mail pro odesílání HTML zpráv a příloh.

Připomínám, že existuje také trochu jiný nástroj pro tvorbu formulářů v Drupalu, a sice modul Entityforms, který umožňuje formuláře tvořit z políček, jaké máte například u definic obsahu. Je tedy založen na entitách a modulu Field. Pro někoho může být zajímavá jeho kombinace odesílání zpráv na mail ve spolupráci s pravidly definovanými modulem Rules.

Na můj vkus je však modul Entityforms příliš těžkopádný a na rozdíl od Webformu vyžaduje spoustu věcí navíc.

Zde jsou pro pořádek odkazy na moduly zmíněné ve videu:

Buďme ve spojení, přihlaste se k newsletteru

Odesláním formuláře souhlasíte s podmínkami zpracováním osobních údajů. 
Více informací v Ochrana osobních údajů.

Autor článku: Jan Polzer

Tvůrce webů z Brna se specializací na Drupal, WordPress a Symfony. Acquia Certified Developer & Site Builder. Autor několika knih o Drupalu.
Web Development Director v Lesensky.cz. Ve volných chvílích podnikám výlety na souši i po vodě. Více se dozvíte na polzer.cz a mém LinkedIn profilu.

Komentáře k článku

návštěvník

Vdaka za clanocek a videonavod, velmi uzitocne info. +1

návštěvník

Dobrý den,
webform je dobrá věc, je možné ale omezit počet vyplněných formulářů? Myslím tím počet přihlášených lidí na akci, že vyplňující uvidí, že se hlásí jako třeba 2 z 10 a po vyčerpání 10 přihlášených se formulář zablokuje nebo něco podobného. Jedná se o Drupal 7.
Našel jsem, že v Drupalu 6 byl modul signup, ale pro 7 zatím není...

Možná je to už někde řešeno, tak se omlouvám za duplicitu, stačí nasměrovat. Děkuji

Profile picture for user Jan Polzer

No, já jsem to řešil několikrát, ale musel jsem napsat vlastní modul, který se navěsí na formulář a kontroluje to. Využil jsem to třeba u registrace do zápisu pro prvňáčky nebo u registrací do kurzů kreslení.

Přímo ve Webformu máte nastavení Total Submissions Limit a User Limit. To Vám zajistí aspoň to, že to nevyplní více lidí. Info, kolik lidí to už vyplnilo, byste ale musel řešit buď vlastním modulem nebo možná i časově komplikovaněji pomocí Views, Data a Webform MySQL Views. S tím vlasním modulem to bude jednodušší. Pomocí hook_form_alter() se napojíte na formulář a upravíte jej dle potřeby.

Jestli existuje nějaký hotový modul, nevím.

návštěvník

Děkuji za rychlé info. Bude mi stačit Total Submissions Limit a User Limit. Ostatní je už na mě, jako skoro laika moc :) Vyzkouším.

Přidat komentář

Odesláním komentáře souhlasíte s podmínkami Ochrany osobních údajů

reklama
Moje kniha o CMS Drupal

 

Kniha 333 tipů a triků pro Drupal 9


Více na KnihyPolzer.cz

Sledujte Maxiorla na Facebooku

Maxiorel na Facebooku

Hosting pro Drupal a WordPress

Hledáte český webhosting vhodný nejenom pro redakční systém Drupal? Tak vyzkoušejte Webhosting C4 za 1200 Kč na rok s doménou v ceně, 20 GB prostoru a automatické navyšováním o 2 GB každý rok. Podrobnosti zde.

@maxiorel na Twitteru

Maxiorel na Twitteru