Supple Forms – A WordPress CMS Plugin

supple_formsI am pleased to announce the release of Supple Forms, a CMS plugin for WordPress.  If you’ve been looking for content management on WordPress, Supple Forms may be part of your solution.  It is easy, flexible, powerful, and lightweight. Supple Forms offers two significant functions for your blog: 1) building custom write panels for the WordPress Write Post page; and 2) easy inserting of form data and HTML snippets into your posts.

Supple Forms may help you if you want to:

  • add custom data to posts through easy-to-use meta boxes
  • you want to store data in a Custom Table, giving you coders flexibility for robust queries on your data
  • easily format your custom data with HTML snippets and insert it into Posts using a simple shortcode – ex. [supple snip=’address_box’]
  • insert any kind of HTML or Javascript snippets into your posts using simple shortcodes

Quick Start Video Guide

Update: I have created a 2 part video guide (15 minutes total) to quickly get you started with the basics of Supple Forms. Check out both videos here.


Download Supple Forms on  Supple Forms



  • Custom write panel or Meta box that displays on the Write Post form
  • Fields utilizing textboxes, dropdown lists, radio buttons, checkboxes, textareas, and a jQuery DatePicker
  • Allows fields with multiple values
  • Options for placement of the custom meta box (after title, after the wysiwyg editor, at the bottom)
  • Choose between storing data in a Custom Table or as WordPress’ own Custom Fields….note that multiple value fields will be stored as WP Custom Fields
  • Insert field values into posts with a flexible shortcode api
  • Create reuseable HTML (really HTML, Javascript or any valid XHTML) snippets – we call them snips in Supple Forms – that can utilize field values
  • Easily insert snips into posts with a shortcode
  • Specify CSS code to be inserted with your HTML snips

On the Drawing Board (A Road Map for Supple Forms)

We’re not stopping here! Down the road, here are some features that I’d like to get into the plugin:

  • Yeah…need to add delete fields ability
  • Create separate Write Pages that utilize different Supple Form sets
  • Allow placing forms within a post that could be editable by your visitors – the data generated by these could be Post specific or not
  • Add optional ajax Auto-fill or Auto-complete to Textboxes
  • Allow execution of PHP code within HTML snips
  • Add options for automatically adding HTML snips to top or bottom of Posts
  • Let me know what your wishlist includes…just add a comment below!
  • Add sidebar widgets for snips
  • Request:  add ability to output data as a sortable table in posts
  • Option to make fields required
  • Request: add ability to use a field’s values as tags
  • Request: query capabilitis…search does not search Custom Fields
  • Request: add a WYSIWYG editor option for forms
  • Allow comma’s in the selection lists for fields
  • Template tags


Using Supple Forms is extremely simple:

  1. After uploading and activating the Supple Forms plugin (see the Installation page), you’re ready to begin building your form
  2. In the Supple Forms menu, click Form Settings to set form level defaults
  3. Enter a Form Title. This will be the title that shows in the form box on the Write Post/Page page
  4. Choose other form-level defaults such as whether to store data in a Custom Table or in WP Custom Fields
  5. In the Supple Forms menu, click Add/Edit Fields to add fields to your custom form.
  6. Add new fields or Edit existing ones by making the proper selection in the Select field dropdown box
  7. If you chose Custom Table as the storage option on the Form Settings page, a Generate Table button will be available on the Add/Edit Fields screen. You will a warning to Generate the table after a field is created or edited until you run the Generate Table option. However, do not Generate Table until you are done adding/editing your fields. It won’t break anything, but it is a best practice to wait. You can generate the table as often as you want, but waiting until you are done editing fields prevents creating extraneous fields in your database. Supple Forms will not Delete table fields or custom tables. We don’t want to risk you losing any data by stray clicks. So if you end up creating fields that later get changed, you will can delete them through phpMyAdmin or another database management tool.
  8. After you’ve added your fields and generated the Your fields will now be available on the Write Post/Page pages
  9. Saving a post/page or publishing a post/page saves your custom field data as well. Custom field data is not saved in the revisions. It is only linked to the actual Post ID record (not the revision IDs)
  10. To create HTML snips for inserting into posts/pages, in the Supple Forms menu, click the HTML Snips Editor
  11. In the HTML Snips Editor, you can create pre-formatted HTML snippets that include your data. Simply place your field names in brackets and insert them in your snips. For example: <div class=’neatbox’>I live in [city]</div>
  12. The name you give your HTML snip will be used in the shortcode that you insert into your posts/pages. For example, a snip named address_box would be inserted with this shortcode: [supple snip=’address_box’]
  13. Finally, place shortcodes like [supple snip=’my_snip’] in your posts or pages.
  14. For the programmer in you, you have direct access to your custom table from within your template code. Use the WordPress database object ($wpdb) to perform SQL commands and queries on your data. Your table name (if using Custom Table) is shown in red on the Form Settings page. Supple Forms utilizes your defined WordPress table prefix ($wpdb->prefix) + the prefix “supple_”. So a table that you named destinations would normally be in the database as: wp_supple_destinations (unless you changed your $wpdb->prefix to something other than the default (wp_))


  • 0.1.62 (3/8/2009) when displaying values, now replaces new lines with br tags.  This problem was evident from the multi-line textboxes where new lines didn’t render new lines.

The WordPress CMS Revolution Continues

WordPress is such a great platform with such a strong community, that it is only natural that people will want to push it to the limits of creativity. I hope that Supple Forms will be yet another brick in paving the WordPress CMS road. I also hope that you will help me make Supple Forms better, stronger, faster…maybe one day, even, Bionic Forms.


While your using Supple Forms would be a reward in-and-of itself to me, I would certainly appreciate any donation that you cared to make if this has been helpful to you.  Of course, a little write up or review on your blog would be appreciated as well.

Thanks again for checking out Supple Forms, and Happy Blogging!

, ,

233 Responses to Supple Forms – A WordPress CMS Plugin

  1. Byron Bennett December 2, 2009 at 8:15 am #

    ShareKnow, I’m not sure where development of the Flutter plugin for WP is right now, but I think they’ve got many of those features. It’s going to be a while before I can get those added. 🙁

    satsuke, yeah…sorry, it’s for Admins right now. You might want to check out my PhotoSmash plugin that lets your users upload images, you can also add custom fields and create custom forms that do not have a file upload field. I do have a companion plugin to PhotoSmash called PhotoSmash Extend that will create a new post when a user uploads. It uses the custom layout feature of PhotoSmash to let you design what the post should look like and where to put all of the field information. PhotoSmash is free, but I’m charging $25 for PhotoSmash Extend. If you want to try it, load up PhotoSmash first and make sure it works on your system/theme properly and then send me an email for PhotoSmash Extend and I’ll get you set up.

    Cheers to all!


  2. Moor December 28, 2009 at 8:32 pm #

    Hi, Byron

    Thanks for that plugin, it might be very useful for me if it’ll work 🙂

    I’ve got 0.1.62 version on my WP 2.9. Everything seems OK, all DB fields created and filled properly (both for plugin and post), I can see HTML content of snip in my post, but there no fields content. I thought it’s because of cyrillic characters in field’s label, but changing it gave no fix. Looks like plugin “can’t see” existing data in post’s meta.

    Any ideas please?

    Regards, Moor

  3. Byron Bennett December 28, 2009 at 9:11 pm #

    Hi Moor,

    I know the plugin has had problems with non-English languages in other areas, but not sure if this would be one. It would seem that if you’re using the same field names, the pre-existing data would work.

    I’m afraid I’ve been away from this plugin for so long I don’t have any suggestions on how to fix. Sorry.

    If it doesn’t work with new posts and new data, it’s probably an encoding issue. If Supple Forms doesn’t work out, you might look at GravityForms or Flutter. Gravity has a fee, but might work for you.

    Sorry I wasn’t much help,

  4. Michael January 19, 2010 at 10:48 pm #

    Hi Byron,

    Thanks for the plug in. Had a quick question. I see that you have the ability to execute php on the drawing board, but was wondering if you could lend me any suggestions in the mean time.
    Im trying to use supple forms to generate different shortcodes for the NextGen Gallery on template pages. This way, the client can make a new page for each gallery. Their shortcode I’d be using is [imagebrowser id=1′], with the id changing in the supple form.

    In order to get shortcodes to work though in template pages, i need to use
    So when I use that script for the Supple Form Shortcode, I am left with just the supple form results, that also need to be run through that same script (for the NextGen Gallery).
    Do you have any suggestions for me?
    Thanks so much in advance for the help.



  5. Bru February 5, 2010 at 4:03 pm #

    Hi, and thanks for a good plugin for wordpress. I am just wondering, is there any trick I can use to let all my post include the snip on top or something? So I don´t need to paste the code for each post?

    It would help a lot.

    Sorry my bad english..

  6. Byron Bennett February 6, 2010 at 10:43 am #

    I’m not sure how that would work…sorry. If you want to execute a shortcode in a template page, you need to add PHP like: < ?php echo do_shortcode('[imagebrowser id=1]'); ?>

    So, if you can figure out that ID # in PHP, you could make it:

    < ?php echo do_shortcode('[imagebrowser id=' . $the_id . ']'); ?>

    Not sure if that helps, but it’s all I’ve got at the moment.

    As for Supple Forms, I’m recommending people either use Gravity Forms, Flutter, or PhotoSmash depending on what you need to do. Each of these plugins does something slightly different, but each does them well.


  7. Byron Bennett February 6, 2010 at 10:46 am #


    The only way to do that at the moment would be to put some PHP in your template page…something like:

    < ?php echo do_shortcode("[supple snip='address_box']"); ?>

    Nothing in SF will add automatically.


  8. Bru February 6, 2010 at 6:19 pm #

    Thanks a lot, that did the trick. I love this plugin:-) Keep up the good work.

  9. Ghalt February 13, 2010 at 1:00 pm #

    Love the plugin! I’m building a site for some less-than-technical folks, and this will be a godsend.

    I’ve run into the problem with the quotes getting the backslashes added. Didn’t see a fix for that yet.

    Also, I want to be able to call my snip inside the shortcode of another plugin. For example (madeup):

    [flickrslideshow set_id=”[supple snip=’my_flickr_set’]” border=”0″]

    The problem is that the flickrslideshow shortcode is ‘closing’ at the first right-bracket.

    Any suggestions?

  10. Byron Bennett February 13, 2010 at 2:11 pm #



    Thanks! On your shortcode issue, you might leave the brackets out of the flickrslideshow shortcode and add them in your code if you’re calling the shortcode manually with a do_shortcode…

    do_shortcode(‘[‘ . $set_id . ‘]’);

  11. Banna March 1, 2010 at 4:34 am #

    for template tag you can use like ordinay custom field retrival.

    ID, ‘room_price’, true); ?>

    —–room_price is my database filed name.

    i think this will help

  12. Banna March 1, 2010 at 4:35 am #

    $room_price = get_post_meta($post->ID, ‘room_price’, true);

    echo $room_price;

  13. Bru March 9, 2010 at 3:55 pm #

    Hi Byron. Just wondering, is there any way to sort post by date field in supple form? I use custom table.

    Brgds. Stian

  14. Victor Teixeira March 17, 2010 at 11:08 am #

    Are you going to update Suple forms to work with custom post types in wp 2.9 and 3.0?

  15. rowland April 6, 2010 at 8:13 pm #

    Okay. I am a TOTAL novice at WordPress. Let me tell you what I’m trying to do. I have a form that calls a JS function. These are samples from the original code that I need to duplicate in your WP form. This is a typical line of code:

    The submit button is this:

    Is there a way to create lines of code like this in your program?

  16. Byron Bennett April 6, 2010 at 9:00 pm #

    — Thanks, Banna! Very helpful. This will work if anyone is using the WP Custom Fields option (not the custom table).

    — Bru, unfortunately, no.

    — Victor, sorry, no. My development time has been consumed by PhotoSmash.

    — Rowland, the code gets stripped out by WordPress, so it didn’t come through. Unfortunately, the forms here (unlike PhotoSmash) are limited to just the fields you can build through the interface. PhotoSmash allows you to build completely custom forms with any fields/scripts you want, but it’s a front-end form builder. You might try Flutter and see if they can do this.


  17. octavio April 17, 2010 at 3:17 am #

    hello Byron, i dont know if the problem with te funky values that katty had on the first comments, i got lost trying to find a solution… so do you already have one? i realy liked your plugin …
    for me its all wrong, look:
    1.- i added some fields with their labels and their values and their order #
    2.- i modified some field, still working
    3.- i changed the order of the fields, i.e. field #7 to place #2…NOT working now

    observations: with the mouse over the link to the field in the “Add/edit fields” page and it showed on status bar of my browser that the fiel that was suposed to be moved to place 2, stil had id of 7 in the status bar… is that by any chance a clue???
    what i think it is doing is that when i write a new post it is asigning the value to number 7 but when it is read as a custom field it looks for it in number 2 and viceversa…


  18. Henry April 18, 2010 at 1:57 am #

    Thank you for your great plugin which is exactly what I have been looking for.

    I have created a custom table and all its fields. Then I encountered 2 issues:

    1. The field names next to the fields does not show up when I add a new page / post.

    2. In Database Viewer, I see a message: “Table either does not exist, or contains no fields”

    I am currently using version 0.1.62 and wp 2.9.2. Perhaps I have done some wrong settings when creating the custom table? Thanks.

  19. LarryP April 30, 2010 at 10:55 am #

    Hello Byron,

    I have been setting up a prototype web site for auto dealers. I am still working on this. Your plug-in has been able to help in many ways. But I am running against a problem.

    What I have is at:

    I am planning to let people download it and expand on it once I finish the search and appearance features.

    What I am looking for is to have the capability to search and display the supple Forms database information. I’d like to make it look like:

    I was wondering if storing the data in a WordPress table could help me sort, display the data.

    There is a major need for auto web sites for WordPress and your plug-in is perfect for this. What’s needed is search features with links. And I am not as smart as I would like to be

  20. Aino Welch May 20, 2010 at 4:34 pm #

    Hi Byron,
    i am working on putting a site together for possible clients to contact me for setting up appointments for or get questions answered about hypnosis. I am VERY new to WP and how to do all this. I am wondering if this would be easy enough for me to use to get some basic information like nature of issues, a little back ground etc. I would need a place where they could in narrative form give me some information…

    I may be asking a stupid question but where does the information go…(not publicly displayed right ? ) Confidentiality is paramount for me and my clients. I do have a friend helping me with the stuff, but I also want to learn how to do this. Seeing and hearing horror stories about people loading up gadgets and then not being able to delete or only partially delete some of the stuff, dragging the websites down in sloooooow mode or non functual zone, worried me a little.

    I thank you for your responds,
    Aino Welch, CH

  21. hburgess June 18, 2010 at 4:21 pm #

    Im trying to submit a checkbox and a textfield in a post. What should the default value for a checkbox or radiobutton be if i want it checked? I cant get a checkbox to show up in the post.

  22. Ned July 2, 2010 at 7:44 am #

    @kathy I think one of the search plugins you mention should work if you’re using the standard database and not the custom one in Supple Forms. Can you confirm which db you’re using?

  23. Gamertag July 2, 2010 at 7:44 am #

    Would like to ask for help!
    I tried to add Supple Forms. Very pleased, easy to use. I use hunagrian language in my blog.
    The latin2?s characters do not display properly. For example: ?sz, üzen,üget?.
    The database UTF8 WP, WP 2.7.1 version.
    Is there a solution? Thank you in advance!

  24. johan July 7, 2010 at 12:24 pm #

    This is a very nice plugin, there is a bug which is, in the dashboard admin add/edit fields, after save the data of the dropdown List, the first entry of the list of values will not be displayed, and if I go ahead, save and generate the table, the first value won’t be save into the database either. My temporary solution is, to re-add an ‘\n’ on the fist line at every update to save the first line for that field. I notice it since wordpress 2.3, I am running wp 3 now, and same issue still exist.

  25. CSmith September 14, 2010 at 10:10 am #

    I can’t seem to make the form show up on the page.
    Anybody have simple directions on how to get my form on my page?

  26. Ebube September 25, 2010 at 8:15 pm #

    I thought i was alone, but just like CSmith, i can’t seem to get this form to show up on my WP 3.0.1 pages. I guess there’s a way to turn it on after activating the plugin??
    Someone please help.

  27. Fede September 28, 2010 at 9:48 am #

    Hi there!

    For all the people of non-english speaking countries, the problem of encoding when the form data has non-english characters could be solved editing the file supple_admin.php in the following lines:

    384: .” value='”.htmlentities($d, ENT_QUOTES, ‘UTF-8’)
    401: .” value='”.htmlentities($val, ENT_QUOTES, ‘UTF-8’)
    414: .htmlentities($val, ENT_QUOTES, ‘UTF-8’).”
    466: .” value='”.htmlentities($val, ENT_QUOTES, ‘UTF-8’)

    Happy WordPressing!

  28. Bru October 5, 2010 at 2:56 pm #

    I still using the code you showed me:

    Is there any easy way to hide Supple snip output when no information is made in fields?

    You see, I have made some HTML labels in supple form for det Supple snips and I want all that to hide when there is no information to show.

    Brgds. Stian


  1. Content Management « A DotNet Intellectualism - February 22, 2010

    […] February 23, 2010 — Ashok Kumar Supple Forms Supple Forms for WordPress offers two significant functions for your blog. You can build custom […]

  2. WordPress Plugins that Extend CMS Functionality | Web SEO Rank - March 17, 2010

    […] 1.4 Supple Forms […]

  3. » Auf der Suche nach neuer Wordpress Software. - May 14, 2010

    […] Supple Forms bietet die Verwaltung von EINER Tabelle an, und leider soll man für jeden Eintrag auch ein Posting anlegen. Aber Elemente könnten dafür übernommen werden, wenn es sich als nicht zu kompliziert erweisen sollte es umzuschreiben, zu erweitern und auszubauen. […]

  4. Designers' HQ » Top 60 incredibly useful WordPress plugins to power up your blog - May 26, 2010

    […] Supple Forms Supple Forms for WordPress offers two significant functions for your blog. You can build custom write panels for the WordPress Write Post page and easy insert form data and HTML snippets into your posts. Supple Forms lets you store your data in either WordPress Custom Fields or your own custom table that the plugin will create for you. So you can format and insert your data into pages and posts with shortcodes, and without tweaking templates. […]

  5. The Ultimate Hacker - May 31, 2010

    […] Supple Forms Supple Forms for WordPress offers two significant functions for your blog. You can build custom write panels for the WordPress Write Post page and easy insert form data and HTML snippets into your posts. Supple Forms lets you store your data in either WordPress Custom Fields or your own custom table that the plugin will create for you. So you can format and insert your data into pages and posts with shortcodes, and without tweaking templates. […]

Powered by WordPress. Designed by Woo Themes