I want to allow website managers(editors) to build custom forms:

  • Editors should be able to create a form with a few text fields and specify the recipient emails.
  • Form should send email with fields content
  • The forms should be simply managed
  • The forms submissions should be stored and listed in backend.

Currently there are few options, but none of them can be used by website managers. See the reasons below:

Contact module (core):

  1. I do not want to allow editors to manage entity fields, it is overhead.
  2. The module exports forms as a configuration.


  1. The UI is too complex for editors. There are a lot of available fields, some pages and settings like access, ajax usage and additional logic.
  2. The module exports forms as a configuration.

Eform (Entity form) is unsupported.

Currently we trying to do it with webform. We are trying to hide the unnecessary settings with form alter :-D Also we are trying to avoid webforms configuration export/import.

How do you create form builders for website managers(editors)?

  • 2
    Webform is basically the defacto solution here. It does everything you listed, and more.
    – Kevin
    Mar 19, 2018 at 14:49
  • thx, @Kevin the webform is listed in my question. As said it is a too complex for editors; also it requires configuration export. I am looking for a way more simpler solution.
    – milkovsky
    Mar 19, 2018 at 14:53
  • 1
    It would be a lot quicker to hide what you don’t want from Webform than implement your requirements from scratch, maybe consider going full-on with that approach. I say “from scratch” because it’s hard to imagine someone building a competing, simpler version of Webform at this point, and if you’re ruling out editors managing fields, that’s pretty much any core-based solution out of the window as well
    – Clive
    Mar 19, 2018 at 17:30
  • EntityForm also has a different purpose (IMO) - but without the completeness of Rules in D8 like D7, that module could only be half as powerful as it was.
    – Kevin
    Mar 19, 2018 at 18:05

1 Answer 1


I am the guy that created the complex Webform UI. For my clients, I disable any unneeded elements, handlers, and exporters. I also use hook_form_alter() to hide (via #access: FALSE) any feature that is not needed. I also have people create forms from Templates which have form behaviors and email handling preconfigured. You can also use hook_webform_create() to define reasonable defaults.

People are using the Config Split module to manage webforms (and blocks) configuration.

BTW, one day I hope someone will sponsor a Webform sub-module that allows site administrators to pick and choose which Webform features and element properties should be available to site builders.

  • Thank you for the answer. That's what we were doing today: creating an internal module simplify_webform + config_split. I will leave the question open for now, let's see if there will be any more suggestions.
    – milkovsky
    Mar 19, 2018 at 18:32
  • Thank you for the module. We simplified the module, not it looks more clean for the editors.
    – milkovsky
    Mar 27, 2018 at 7:51
  • @jrockowitz Any news about the sub-module you mentioned?
    – macbert
    Sep 17, 2020 at 16:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.