Let’s face it, forms are one of the most important parts of a website, and yet they’re also one of the things that WordPress really doesn’t do well. Out of the box, the only available form is a post comment form, and even that could be improved in many ways.
Because of this, every WordPress developer needs a good form plugin that they can use on many sites for many different purposes. There are free ones available, but they all suffer from various problems. For example, Contact Form 7 doesn’t store form submissions in the database, and is therefore effectively useless. CForms II is quite powerful but the admin pages are clumsy and counter-intuitive. And the free version of Formidable is too limited in functionality compared to its Pro version.
Many WordPress developers (including myself) end up using a commercial solution, which pretty much means either Gravity Forms or Formidable Pro. Having used both, I feel that Formidable Pro has the edge over Gravity Forms, and it’s also considerably cheaper (no annual renewals). So for the last year I’ve used Formidable Pro on a wide range of websites and although it’s not perfect, it’s proved to be pretty versatile. I would love to author a powerful form plugin myself, but every time I use Formidable Pro I decide to put it off for another month or two.
Recently I was contacted by the developers of a new pretender to the form plugin throne, asking if I would review their new Dynamic WordPress Form Builder plugin. It’s billed as being easy to use but powerful, with features for beginners and professionals.
It’s available on the WordPress plugin repository, and is therefore currently free. Judging by the spiel on the authors’ website, an enhanced commercial version will be released at some point, making their business model very similar to that of Formidable Forms. Downloading it gives you a whopping 2.4Mb zip file – my first reaction was that something this big had better be good. Really big plugins can cause updating problems on slow hosts due to PHP timeouts – something to keep in mind.
I installed and enabled the plugin on a WordPress 3.5.1 test site I run on my local development server. I switched the test site to use the Twenty Ten theme (which rarely conficts with anything), and I disabled all other plugins for good measure. When unzipped I noticed that the plugin’s folder is called ‘dynamic-plugin’ – something that identified it more uniquely would have been sensible.
After activation, the first thing I noticed when heading to the plugin’s options page was a small form with a security key field prepopulated. This form was not annotated or explained in any way, and the rest of the page is dedicated to asking for a subscription for technical support (USD 10.00 for 3 months). Did the plugin ‘phone home’ to get that key when I activated it? Does that security key contain a code that uniquely identifies my installation? I feel very strongly that plugins should not phone home, and if they do, they should make it clear before doing it. This security key may be harmless – it may just be used to encrypt local data – but if so, I should be told this.
So much for the general options page. I clicked on the next admin page which is called ‘Table Settings‘. Here I found a cryptic form asking for a name, email and number of rows. At this stage I had absolutely no clue what to do here. With a sigh I went looking for documentation.
There is a video on the authors’ site but that was just sales spiel and after 30 seconds I’d had enough of listening to the extremely poor English grammar spoken by clumsily animated avatars. Luckily there is a ‘User Guide‘ link on the site so I started reading.
Unfortunately this didn’t help much – the user guide talks about creating tables since all data is stored in tables – but wait, didn’t the plugin create its own tables when it was activated? Yes it did. And their names don’t start with the WordPress prefix either. For the first field in the cryptic form, the user guide says “This option represents the representation name of the forms group. All forms refer to one table that is stored in the database.” Not helpful at all – what is a representation name, what is a forms group, and didn’t it just contradict itself? Anyway, I entered some information into the form and saved it.
Not sure what I had achieved, I went to the next admin page called ‘Table Fields/Forms‘ (again, what’s with the tables?). On first sight this looked more promising – I might actually get to create a form. And after some messing around with buttons and icons, I succeeded in adding a couple of fields to my form, and placing those fields into the WYSIWYG editor on the right.
But this shows the stark contrast between this plugin and (say) Formidable Pro. Here, it looks like I am expected to create a layout for my form from scratch. And when I clicked the save button it asked me if I was sure I wanted to save the new default form design. Er, no – I’m trying to create a contact form, not alter any defaults. And how do I enter the text that appears on the Submit button? I couldn’t find a way to do this, and I’m far from stupid. At this point I gave up in disgust.
After 20 minutes playing around in the plugin’s admin pages, I felt like I’d gone 5 rounds in a boxing ring – everything was a struggle, whether trying to decipher the meaning of an icon, trying to work out when information had been saved, trying to work out why it called a form a table in one place and a form in another, or trying to follow the poorly written and poorly organised user guide.
Contrast this to Formidable Pro, which provides built-in basic layouts, easy to edit CSS, useful form templates, drag and drop field adding, custom hooks, and a whole load of other little touches designed to make it easy to use. Within 20 minutes of installing Formidable Pro for the first time, I had 3 forms working on my site, all looking smart and consistent.
Sometimes when a new plugin becomes available, it changes the way we look at certain tasks and becomes an indispensable part of our toolbox. Dynamic WordPress Form Builder is not one of those plugins. Quite frankly, it’s a mess and needs many, many hours of rebuilding. It also needs input from someone with half a clue about usability – its processes are not easily followed, its screen layouts are jumbled and it expects you to talk its language, rather than talking yours. And its language isn’t even good English – the authors’ site, including the user guide, reads like it’s been translated into English from Hindi by Google.
Do yourself a favour and give this plugin a wide berth. There are so many better offerings available. Even the free CForms II is easier to use than this. And it doesn’t even bear comparison to Formidable Pro or Gravity Forms. Sometimes it’s worth paying a little for quality.