Trying Out Gravity Forms
Recently, we found ourselves in a situation where we needed functionality on our website that wasn’t quite there in any existing plugin, but also seemed straightforward enough that hiring a developer was probably overkill, and certainly expensive.
Without getting into too much detail, what we needed was a way to collect information in a structured way, and then get the resulting data into a format that we could use later…and a nice-to-have was a way to collect an optional donation via Paypal at the end of the process.
We started out with WuFoo’s form service. It certainly filled the bill on collecting information, but fell short in two areas. First, the forms don’t actually run on your webserver. They run on WuFoo’s server. There are plugins where you can sort of mask this, but in the end, the integration with WordPress is very superficial. Any processing of the data requires logging into WuFoo. Secondly, when you get into a certain volume, or need extra features, like Paypal integration, you are forced into a monthly plan. We certainly don’t mind paying for functionality, but paying for it month-to-month isn’t ideal for us…we would rather pay once.
After searching around for something less expensive, we did find additional hosted solutions. JotForm, in particular, was initially attractive, as it’s pricing was much lower than WuFoo. They had a paypal-integration solution for less than $10 per month, as compared to WuFoo’s nearly $30 per month. JotForm’s feature list was smaller, but it did everything we wanted it to. We were very close to selecting and moving forward with JotForm when a friend let us know about Gravity Forms.
It wasn’t cheap, but it was a one-time payment, and it’s fairly easy to find a discount code to take some of the sting out of the $199 developer license. They do have a $39 personal license, as well as a $99 business license, but we really wanted the developer license so we could get the Paypal integration.
Aside from having the one-time licensing payment, Gravity Forms was also attractive because it really runs on your server, and is a native wordpress plugin. No trickery involved to keep users on your site. It also gains the benefit, since it runs in wordpress, of deep integration. It has the ability to leverage shortcodes, creates it’s own wordpress compatible php function calls, creates widgets that can be used in your theme, and so on. It even has support for hooks, filters, and permissions by role.
It also supports some features that not every form builder offers, like multi-page forms with a progress bar, limits on number of entries (great for contests), image and file upload, and smart fields like dates, times, and so forth.
That’s a lot to consider all at once, and perhaps sounds a little complex. It’s true that using some of the advanced features can take a bit of trail and error, but the tool does a decent job of keeping simple tasks simple. Here’s a screenshot of a simple, but common task, creating a “contact us” page:
You can see from the screenshot that the interface, for simple tasks, is pretty straightforward. Lesser-used controls are hidden behind a tab keeps them at hand, but not in your face. The right side of the screen shows some of the “Advanced Fields” that come with built-in smarts and validation. For example, there’s a “Date” field that will ensure only valid dates are able to be input.
Here’s another advanced type field, in this case an address field:
You can see several options here that will save you a lot of time, like the ability to use either a localized address type or an international type. There’s also basic validation in place that will ensure collected addresses are more accurate.
And finally, the paypal integration were were after in the first place:
A little more complex than just building a form, but Gravity Forms does lead you down the path, prompting you to enable IPN on your paypal account, then leading you to define your product(s), and finally, the screen shown above for configuring your paypal Account info, and general preferences for checking out. Paypal is what we needed, but they also offer integration for Authorize.Net if you need to tie in a real merchant account.
In any case, the product does much more than we will ever do with it. Everything was reasonably straightforward, and the product documentation fills in whenever a specific task was difficult. There’s also a reasonably active forum where you can get support. We were certainly happy with it, and give it an honest thumbs up.