The Form Builder
The form builder came from the need to allow developers to manipulate form objects instead of form markup, in order to create forms programmatically.
How to create a form
- WonderWp provides a form factory available in the container. Ask it to give you a new instance like so :
$form = $container['wwp.forms.form'];
- Once you've got your instance, add some fields to it via its
addFieldmethod. You can find the complete list of available fields objects under WonderWp/Component/Form/Field namespace. The next document section describes them all if you want to know more about the parameters they use.
/** @var FormInterface $form */ $form = $container['wwp.forms.form']; //Get a new form instance from the container factory $form->setName('er-login-form'); //You can set a name if you want //Add your first Field $f1 = new InputField('login',$loginVal,['label'=>__('username',TEXTDOMAIN)]); $form->addField($f1); //Second Field $f2 = new PasswordField('pwd',$pwdVal,['label'=>__('password',TEXTDOMAIN)]); $form->addField($f2); //Your form is ready to be rendered. //This can be done like so : echo $form->getView()->render();
In the next doc section, let's see the different fields you can manipulate and how you can use them.