Note: Quform version 2 is not backwards compatible with Quform 1.x, see the blog post and migration guide for more information.


07 Feb 2024

  • Added global options to control Radio/Checkbox styles
  • Added support for captcha image transparency
  • Added a filter hook on the CSRF failure response
  • Added hooks to add custom content to the View and Edit entry pages
  • Added support for limit 0 on getEntries and listEntries to return all rows
  • Added additional classes to view/edit entry table rows
  • Added support for having the plugin cache directory outside the plugin folder
  • Fixed not equals logic operator for array types
  • Fixed overwriting existing Set-Cookie header
  • Fixed entry count filter hooks missing from shortcode functions
  • Fixed a conflict with the WP Hide & Security Enhancer plugin
  • Fixed variables not working in redirect URL
  • Fixed background images being removed from some buttons
  • Fixed a race condition with the session system if there is a 404 error on the page
  • Fixed deprecated notices on PHP 8.2
  • Fixed deprecated notices in PhpSpreadsheet on PHP 8.2
  • Fixed group label not showing in email if it only contained File Upload fields


24 Aug 2023

  • Added compatibility with the Enfold theme
  • Added a subtle box shadow under focused fields in the React theme
  • Added quform_is_uploaded_file filter hook
  • Added a filter hook on the default entry labels
  • Added hooks when Quform scripts and styles are enqueued
  • Fixed deprecated notice on PHP 8.2
  • Fixed form/entry table sorting indicators in WP 6.3
  • Fixed the token replacer sometimes returning empty values if certain variables are used within the form
  • Fixed notification email table padding in some email clients
  • Duplicate form entry labels when a form is duplicated


30 Jun 2023

  • Added performance optimisations on the entries list page
  • Added new hooks before/after getting mailer config
  • Added shortcode parsing in Checkbox/Radio option labels
  • Fixed list/view/edit entry database error with large forms
  • Fixed an issue where the plugin settings would not save
  • Fixed an empty dashboard widget appearing if there is an unread entry in the trash
  • Fixed an accessibility issue with Google reCAPTCHA
  • Fixed dashboard icon conflicts with some themes
  • Fixed editing of field values that are conditionally hidden


08 Mar 2023

  • Added hCaptcha integration as an alternative provider of reCAPTCHA
  • Added Cloudflare Turnstile integration as an alternative provider of reCAPTCHA
  • Added an Autocomplete option to fields for browser autofill
  • Added a fallback option to notifications if no conditional rules are matched
  • Added an option to move the back button after the submit/next button
  • Added a global plugin option to disable entry creation
  • Added a shortcode to display the number of remaining entries
  • Added a filter on form JS config
  • Added a filter on the form entry count
  • Disallowed uploading of empty files
  • Fixed form resetting before redirects
  • Fixed deprecated notices on PHP 8.1
  • Fixed searching forms and entries by ID


07 Sep 2022

  • Added support for the Quform WPML add-on – translate forms into multiple languages using WPML
  • Added a class to the CAPTCHA image
  • Added a quform_pre_delete_entry hook before entries are deleted
  • Added a filter hook to remove the hidden submit button
  • Added a JS event trigger when a file upload is added or removed
  • Fixed not being able to resubmit the form with confirmation redirect types
  • Fixed a race condition issue when saving session data
  • Fixed a fatal error when checking for updates in rare situations
  • Fixed large numbers being rounded or converted to scientific notation when exported
  • Fixed empty value shown in email when an invalid date or time is submitted
  • Fixed “you have unsaved changes” always showing with schedule options
  • Fixed “Plain text” field showing for non-HTML elements
  • Fixed background image CSS helper
  • Fixed page options not being sanitized
  • Fixed jQuery deprecations
  • Fixed deprecated warning in PHP 8.1
  • Updated Fancybox 1 to version 1.3.9
  • Updated Fancybox 2 to version 2.1.9


10 Oct 2021

  • Added form scheduling: choose a date and time for forms to open and close
  • Added an option to limit the maximum number of entries for a form
  • Added an option to limit the entries for a form to 1 per user or IP address
  • Added prefix and moreEntropy params to uniqid variable
  • Added a check for the zip PHP extension to the server compatibility
  • Fixed a conflict with older versions of ACF Pro
  • Fixed a conflict with old jQuery UI Widget
  • Fixed a session creation race condition in rare situations


23 Jun 2021

  • Fixed a fatal error exporting entries


22 Jun 2021

  • Added full Chinese translation
  • Fixed button icon spacing in RTL
  • Fixed theme conflict making file upload field visible within dropzone
  • Fixed a conflict with the Visualizer plugin


01 Jun 2021

  • Added support for WordPress auto plugin updates
  • Added support for using HTML in the upload dropzone text
  • Added a custom CSS class option for the wrapper of each element
  • Added action hooks for actions on forms and entries
  • Added support for SameSite cookie attribute
  • Added a filter hook to the export field list
  • Fixed Select2 display issues in plugin admin pages
  • Fixed a JavaScript error on some themes with a custom menu
  • Fixed searching posts/pages returning inconsistent results
  • Fixed a fatal error in the Dutch translation on PHP8
  • Fixed an accessibility issue with the default submit button
  • Fixed a source mapping warning in dev tools


15 Dec 2020

  • Fixed an issue with the “Combine JavaScript” option on WP 5.6
  • Fixed an issue with the Fancybox 1 script on WP 5.6
  • Fixed a deprecated notice on PHP 8


05 Nov 2020

  • Added a field to the icon selector to set the icon classes, so it’s now possible to use FontAwesome 5 if the icons are provided from another source
  • Added aria-hidden=”true” to hidden submit button to fix an accessibility issue
  • Added heights to Slim, Huge, Fat textarea fields
  • Added a “Custom CSS class” option to Name element parts
  • Added a filter on the HTML form tag attributes
  • Fixed missing icons and icon conflicts on the plugin admin pages
  • Fixed icon alignments in textarea fields for all themes
  • Fixed inside label color on gradient themes


03 Sep 2020

  • Fixed logic rule field size
  • Fixed AltBody bleeding into subsequent emails
  • Fixed dragging element to another page in WP 5.5
  • Fixed jQuery Migrate warnings
  • Fixed conflicts with FontAwesome 5
  • Fixed autodetect script loading for blocks
  • Fixed deprecated notice in the email address validator with WP 5.5
  • Fixed an email sending hook conflict with WP Mail SMTP
  • Fixed performance issues on edit entry page if the site has many users
  • Fixed redirect to /false if redirect page is deleted
  • Added monospace font to code fields
  • Updated Kendo UI to version 2020.2.617
  • Updated jQuery Form to version 4.3.0
  • Updated jQuery jEditable to version 2.0.17
  • Updated jQuery File Upload to version 10.31.0
  • Updated Select2 to version 4.0.13
  • Updated Spectrum to version 1.8.1


02 Jun 2020

  • Fixed script and style tags being stripped from the HTML element content and confirmation content when the form is saved
  • Fixed the referral settings to support the new Envato Market affiliate program
  • Added sanitization to the HTML element content and confirmation content when viewed within the WP admin (e.g. form preview and view entry)
  • Added a filter hook to the HTML element content


28 May 2020

  • Fixed style tags being stripped from the notification email content when saving the form


21 May 2020

  • Fixed an error submitting the form in Chrome 83


21 May 2020

  • Added HTML sanitization to the HTML element, notification content and confirmation content fields – it’s no longer possible to have SCRIPT or STYLE tags in these options – we recommend you back up your database before saving any form to avoid any loss of HTML code within the forms
  • Fixed the disable CSS/JS options for Fancybox 3
  • Fixed tags displaying in Textarea editor when editing entries


19 Mar 2020

  • Added a {uniqid} variable to generate a random unique value
  • Added a custom class option to the Hidden field
  • Added a filter hook when getting field values
  • Added the dropping of plugin tables when a multisite site is deleted (via wpmu_drop_tables)
  • Fixed the first column missing in the entry export
  • Fixed an issue where the value submitted in a Date field could change depending on the PHP timezone
  • Fixed a path issue with uploaded images if the path doesn’t have a trailing slash
  • Fixed locales not loading for Time elements if there are no Date elements in any form
  • Fixed an error with the Time element if there are no Date elements in any form
  • Fixed scripts loading on archive pages when set to only load on specific pages
  • Fixed a theme conflict with the icon selector
  • Fixed the CSRF protection failure error message not showing when Ajax is disabled
  • Fixed a bug where the selected redirect page could be lost when loading the confirmation settings
  • Fixed a bug where loading scripts on selected pages could be lost when loading the settings page
  • Fixed a conflict with WPML
  • Increased the time limit when importing and migrating forms
  • Updated the Quform block to resolve a deprecated warning
  • Removed PhpSpreadsheet samples and docs folders to reduce plugin size


4 Dec 2019

  • Fixed incorrect version number in the last update


4 Dec 2019

  • Replaced PHPExcel with PhpSpreadsheet to fix a security warning on Windows, PHP 5.6 is now required to use the entry exporter
  • Fixed the CSS selector for the ‘Group elements wrapper’ style
  • Fixed the select menu field sizes in WP 5.3
  • Fixed a notice error on the entries list page
  • Updated jQuery File Upload to version 10.2.0
  • Updated jQuery-jeditable to version 2.0.13
  • Updated JS Cookie to version 2.2.1
  • Updated Select2 to version 4.0.11
  • Changed the minimum WordPress version requirement to 5.2
  • Changed the minimum PHP version requirement to 5.3


4 June 2019

  • Fixed the form builder splitter panel order for RTL languages


1 June 2019

  • Added RTL support to the plugin admin pages
  • Added hooks to allow storing encrypted form values
  • Fixed not being able to submit the form more than once when using the invisible reCAPTCHA v2
  • Fixed an error submitting the form on http:// pages when the configured site URL is https://
  • Fixed the per-element field focus style selector
  • Fixed the per-element styles for the datepicker


30 April 2019

  • Added reCAPTCHA v3 support
  • Added a style selector for the radio/checkbox option label on hover
  • Added a filter hook for the confirmation data
  • Fixed the head script being printed when script loading is off
  • Fixed a bug where the scripts would erroneously be loaded on archive pages
  • Updated the Kendo UI (datepicker/timepicker) scripts to the latest version


04 April 2019

  • Added Fancybox 3 as a popup script option
  • Added hooks to allow modification of the URL of an uploaded file
  • Added hooks to allow modification of the upload URL and path
  • Added hooks when resending notifications
  • Added style selectors for the File Upload dropzone
  • Fixed an issue when creating custom elements
  • Fixed the post ID and post title being empty when the form is on archive pages
  • Fixed the “Hide form” confirmation option when the “Use Ajax” option is disabled
  • Fixed error message position when the fields have a set width with RTL


09 January 2019

  • Fixed an issue where HTML entities were visible in field values after migrating entries
  • Fixed group title/description styles applying to inner nested groups
  • Fixed the HTML editor height on WordPress 5.0


29 December 2018

  • Fixed an issue with the quform_migrator_convert_entry_value hook
  • Fixed the translations on the editor block for French and Indonesian


21 December 2018

  • Fixed accessibility issues with the Checkbox and Radio Button elements
  • Fixed a naming conflict with the CSS minifier class
  • Fixed the translations on the editor block for the Dutch language


8 December 2018

  • Added compatibility with WordPress 5.0 and an editor block to insert forms
  • Added a resend notification feature to the view entry page
  • Added options to set the form theme color scheme
  • Added options to set the default value on the separate parts of the Name element
  • Added the separate parts of the Name element to the export entries field list
  • Added a filter hook to filter the entry values when migrating entries
  • Added the Indonesian plugin translation
  • Fixed an issue with the Radio/Checkbox option label size when using images


11 October 2018

  • Added an option for multipart email notifications
  • Added an option to enable the WordPress editor on the Textarea element
  • Added an option to the File Upload element to add the uploaded file(s) to the WordPress media library
  • Added sortable functionality to the export entries field list, the sort order will be remembered on subsequent visits
  • Added a Visibility option to the Submit and Group elements
  • Added a {custom_field} variable to the insert variable list, to get post custom field data
  • Added a {user_meta} variable to the insert variable list, to get user meta data
  • Added an option for plain text content of the HTML element
  • Added classes and style filters for the File Upload, Checkboxes and Multiselect element values in HTML format
  • Added missing style selectors to the Name element
  • Added a responsive columns option to the Name element
  • Added an outer wrapper class for first and last pages
  • Added Date and Time format options to the form settings
  • Added DateTime format options to the form and plugin settings
  • Added an RTL option to notifications
  • Added options to show the Password field value in the email and database
  • Added an indicator when the form has unsaved changes
  • Added a tweak option to always show full dates in the entries list instead of just the time if the date is today
  • Added a {datetime} variable
  • Added a timestamp to uploaded file data array
  • Added an option to put a Sub label above the field
  • Added a $customDateFormat parameter to the formatDate function
  • Added a Settings page link to the Forms admin bar menu
  • Added an option to add CSS styles to the field placeholder text
  • Added filter hooks for the element label and admin label
  • Added filter hooks for the Page and Group label text
  • Added a filter hook for the export entries field list
  • Added a filter hook to getClientIp
  • Added a filter hook for element visibility
  • Added a filter hook for notification mailer config
  • Added a JavaScript hook when resetting the form
  • Added a JavaScript hook when navigating between pages
  • Changed the ordering of the list of forms throughout the plugin to use the same order as the Forms list page
  • Changed the support page caching functionality to run on the document ready event instead of the window load event
  • Changed the default setting to true for auto opening the Datepicker/Timepicker
  • Changed session cookie to be secure on HTTPS sites and only accessible using the HTTP protocol (httpOnly true)
  • Fixed the position of the Checkbox and Radio option labels with long label text
  • Fixed editing entries when an element has the Prevent Duplicates validator
  • Fixed the inside label position in Date and Time elements
  • Fixed the {date} and {time} variables to use the configured date/time formats or locale to determine the format
  • Fixed the dates on the entry list and entry view to use the date and time format settings
  • Fixed several edge cases with conditional logic on the Radio, Checkbox and Multiselect elements
  • Fixed the conditional logic cache
  • Fixed compatibility with WP 4.5 and 4.6
  • Fixed checkbox entry values not migrating properly
  • Fixed the Regex validator error message not migrating properly
  • Fixed tooltip classes not migrating properly
  • Fixed the tooltip custom class option
  • Fixed counts of entries in the forms list and dashboard widget to not include trashed entries
  • Fixed an issue with migrating element placeholder variables
  • Fixed the tooltip icon background color in the Minimal theme
  • Fixed the upload button text in the German translation
  • Fixed entries list table to always call getValueHtml even if the element value is empty
  • Fixed the padding/margin on the invisible reCAPTCHA
  • Fixed the function which determines if an element is in view to account for the scroll offset option value
  • Fixed the Recent entries on the Dashboard page to not include trashed entries
  • Fixed several issues using the plugin when nonces have expired
  • Fixed being able to import a 1.x form into the 2.x importer
  • Fixed the entry ID not being set on the form instance on the list/view/edit entry pages
  • Fixed the page progress not hiding when the hideForm option is enabled in the confirmation
  • Fixed the position of WordPress notices throughout the plugin pages
  • Fixed the spacing within nested bordered groups
  • Fixed the Page and Group title styles when printing the entry page
  • Fixed the inside label placement for RTL forms
  • Fixed that elements with a fixed width could overflow their container
  • Fixed an issue where the element drag and drop can stop working when collapsing groups
  • Fixed two bugs when deleting container elements where the child elements where not properly deleted
  • Fixed the quform_get_value_html hook running twice for the Textarea element
  • Increased the default max-width of Magnific Popups
  • Removed the shadow effect from input fields on Apple devices


8 June 2018

  • Removed the automatic form data sanitization run during plugin upgrade (added in version 2.4.0)


8 June 2018

  • Added style selectors for the HTML element
  • Added Persian plugin translation
  • Added data sanitization to all form builder settings
  • Fixed an issue where users without the ‘unfiltered_html’ capability could add unfiltered HTML
  • Fixed an issue with the Excel 2007 entry export if the ZipArchive class is not available
  • Fixed an issue where existing logic rules would stop working when the value of a dependant option was changed
  • Fixed the form Position setting not saving properly


22 May 2018

  • Added a tweak option to stop IP addresses being saved with the form entry data
  • Added filter hooks to be able to modify the classes of each element wrapper
  • Added action hooks when creating the admin menu items
  • Fixed an issue where the Radio/Checkbox/Select option actions did not work on WP 4.9.6
  • Fixed an issue where the cached CSS/JS files were not regenerated after updating the plugin
  • Fixed an issue where form theme CSS was missing from combined CSS file after updating the plugin
  • Fixed an issue where the contents of the cached CSS/JS files could not be changed
  • Fixed an issue where a custom loading spinner is visible before submitting the form
  • Changed the email address validator to disallow dotless domains by default


20 April 2018

  • Added support for forms on cached pages
  • Added support for modifiers in the {today} variable in the Date element, e.g. {today|+1 day}
  • Added support for modifiers in the {now} variable in the Time element, e.g. {now|+2 hours}
  • Added a hook quform_entry_edit_pre_display when displaying the edit entry form
  • Added a hook quform_entry_post_process when the edit entry form is submitted
  • Added global style selectors for progress bar and progress tabs
  • Added an option to change the vertical spacing between elements
  • Added global style selectors for the Next button
  • Added per-element styles for the Next button in the Submit Button element settings
  • Fixed CSRF protection
  • Fixed a bug where other form’s entry labels are deleted when saving form entry labels
  • Fixed the layout when printing an entry
  • Fixed logic checks when using greater than/less than operators
  • Fixed the reCAPTCHA element when using the WP Rocket plugin
  • Fixed submitting all forms when clicking a Radio Button / Checkbox with the Submit on choice option
  • Fixed the Name option for the Default recipient and Default “From” not saving on the Settings page
  • Fixed not being able to tab to a File Upload field
  • Fixed the height of the enhanced Select and Multi Select fields to be the same when using the field size options
  • Fixed Date and Time element translations not saving
  • Fixed the position of the required indicator text if the label text spans two or more lines
  • Fixed the Label text color option not working in some situations
  • Fixed the File Upload field not working when inside an Android WebView
  • Fixed the enhanced select appearance on Safari
  • Fixed per-element button styles not overriding the global button styles
  • Fixed the Dynamic default value option on the Name element
  • Fixed the Duplicate validator on the Name element
  • Fixed the entry export to not include Trashed entries
  • Improved the honeypot to be more resilient against bots
  • Changed the WordPress version requirement to 4.5


14 January 2018

  • Added a body padding option for notification emails
  • Added an option to translate the page progress text
  • Added a way to get a part of an array type element value using a variable tag
  • Added filter hooks when getting form values
  • Added radio and checkbox input selectors to the styling system
  • Added success message text and icon selectors to the styling system
  • Added datepicker selectors to the styling system
  • Added an option to use HTTP API requests instead of HTTPS
  • Added support for Hidden inputs being a source for logic rules
  • Added an option to the Date and Time elements to show the datepicker or timepicker when the field is focused
  • Added a readonly option to Date and Time elements
  • Added Ctrl+click to turn off a radio button when editing an entry
  • Added sorting the form list by ID by clicking the shortcode column heading in the forms list table
  • Added an option to hide the dashboard widget
  • Updated all of the plugin translation files
  • Updated the Kendo scripts to the latest stable version
  • Changed the ordering of form processing so that the entry ID is always available in success processing hooks
  • Changed the form preview to not include custom JavaScript
  • Changed the page tabs within the form builder to show the page number if the page does not have a label
  • Fixed a conflict with the Flatsome theme page builder
  • Fixed the database tables not being created on WordPress multisite
  • Fixed an issue with the submit button not extending to 100% width
  • Fixed an error submitting the form if an invalid date was entered for the min or max option in the Date element
  • Fixed an issue where the correct scripts were not being loaded after importing a form
  • Fixed an issue where the scripts were not being loaded after activating the plugin
  • Fixed an issue where the notification or confirmation settings could not be opened if the visual editor was disabled in the user’s settings
  • Fixed an issue where the visual editor popups were below the plugin popups
  • Fixed the position of the set entry label popup on the entries list
  • Fixed the links to proper documentation pages throughout the plugin
  • Fixed an issue where the icons could be missing from the plugin pages
  • Fixed an issue where the form could not be submitted if the Name element was hidden by conditional logic
  • Fixed several issues where links to plugin pages were visible even though the user did not have permission to access them
  • Fixed the visibility for the option to hide the form after submission in the confirmation settings
  • Fixed the global date and time format settings that previously did not work
  • Fixed the Select2 search input could not be focused within a form in Magnific Popup
  • Fixed the smooth scrolling script to properly scroll within popup forms
  • Fixed the submitted value of a CAPTCHA element displaying in the notification email form data
  • Fixed variables not being converted when migrating the autoreply email
  • Fixed the visible plugin menu items for non-administrator users with full plugin access
  • Fixed the validation error icon not working
  • Fixed the form preview when there is output from the quform_pre_display hook
  • Fixed a conflict with the Foobox plugin
  • Fixed notification attachments when the files are not also being saved to the server


8 September 2017

  • Fixed empty email content in notifications when migrating 1.x forms
  • Fixed adding an empty notification when migrating 1.x forms
  • Fixed a bug which converted some filters and validators to the wrong type when migrating 1.x forms
  • Fixed conditional recipients being disabled when migrating 1.x forms
  • Fixed conditional logic rules when migrating 1.x forms
  • Fixed a bug with radio/select/checkboxes with customized values when migrating 1.x forms
  • Fixed insert variable placeholders not being converted to the new format when migrating 1.x forms
  • Fixed the form redirect not being migrated properly when migrating 1.x forms
  • Fixed an out of memory issue when the site has a lot of posts or pages
  • Fixed issues with the WPEngine PHP Compatibility Check plugin


4 September 2017

  • Added multi-page forms
  • Added conditional logic to pages
  • Added a new Name element
  • Added a new Multi Select element
  • Added a new Column Layout element
  • Added editing entries
  • Added a duplicate element button in the form builder
  • Added more form themes
  • Added a new submit button element that can be moved around
  • Added loading spinner options
  • Added a notifications system where unlimited emails can be sent from a single submission
  • Added conditional logic to notifications
  • Added attachment options to notifications
  • Added a Confirmation system logic can be used to show a different message or redirect to a different page depending on the form values
  • Added RTL support
  • Added a label system to entries, create unlimited labels, assign labels to entries and search by label
  • Added the ability to Trash forms
  • Added the ability to Trash entries
  • Added a Migrate tool, to migrate 1.x forms and entries to this version
  • Added an Uninstall tool
  • Added options for a default recipient and default “From” to the plugin settings page
  • Added options to only load scripts on pages with forms, or by choosing specific pages
  • Added options combine the plugin CSS into a single file
  • Added options combine the plugin JavaScript into a single file
  • Added options to disable the CSS/JS for 3rd party scripts separately
  • Added options to add permissions to WordPress roles
  • Added options to add custom CSS and custom JavaScript to the site
  • Added CSRF protection
  • Added a toolbar menu for form management
  • Added an option to hide the form edit link
  • Added an option to set the smooth scrolling offset
  • Added Fancybox 2 and Magnific Popup support for popup forms
  • Added the Kendo UI Timepicker script to the Time element
  • Added many more locale options for the Datepicker and Timepicker
  • Added options for admin only, logged in only, and logged out only fields
  • Added field icon and label icon options
  • Added options to set background images and icons on Checkbox or Radio elements
  • Added support for optgroups in the Select and Multi Select elements
  • Added responsive options to forms for elements and columns
  • Changed the format of entry data when stored in the database
  • Changed the Date element Datepicker to use Kendo UI Datepicker instead of jQuery UI Datepicker
  • Changed the Date element to use a text field instead of select menus
  • Changed the Time element to use a text field instead of select menus
  • Changed Referral Program settings to be plugin-wide instead of per-form
  • Removed the email sending settings (email sending now uses wp_mail() for better integration with other plugins)
  • Removed Uniform
  • Removed jQuery UI Datepicker
  • Removed the help pages from within the plugin

Version 1.x (legacy)


4 May 2021

  • Fixed email sending in WP 5.5+
  • Fixed Fancybox popups on WP 5.6+
  • Fixed notice error with REQUEST_METHOD


1 June 2020

  • Fixed an error submitting the form in Chrome 83
  • Fixed resetting the inside label on the Email field
  • Fixed PHP deprecated notices
  • Added Norwegian, Polish and Romanian translations


2 June 2017

  • Added an option for the Invisible reCAPTCHA – a new set of reCAPTCHA keys will need to be generated to use this
  • Fixed the styling of the non-JavaScript reCAPTCHA


31 May 2017

  • Changed the File Upload element upload progress to use JavaScript (jQuery File Upload) instead of Flash (SWFUpload)
  • Fixed the upload filename filter to allow non-Latin characters in filenames
  • Replaced deprecated usage of the jQuery(window).load function


20 April 2017

  • Fixed an error saving new forms when the user did not have permission to view entries


20 April 2017

  • Fixed an issue that could affect other plugins when Quform is unlicensed
  • Fixed an issue where users with the capability iphorm_view_entries could delete entries
  • Fixed several issues where links to plugin pages and actions were visible when the user did not have capability to access them


20 January 2017

  • WordPress 3.3 is now the minimum requirement
  • Added IP address as column option in entry table layout
  • Added ARIA accessibility labels for the Date, Time and File Upload elements
  • Fixed an error when adding an element when using the Arabic translation
  • Fixed an error when connecting to some SMTP servers on PHP 5.6+
  • Fixed a problem on some themes where the file upload button could not be clicked
  • Fixed conditional logic on the reCAPTCHA element
  • Updated the jQuery UI themes to the latest version


18 August 2016

  • Added an option to disable [raw] tag detection which can cause conflicts with some themes
  • Added Turkish translation (credit to Fatih Mehmet Ekler)
  • Fixed a bug when searching entries with non-English characters


31 May 2016

  • Fixed Services_JSON PHP Notices on PHP7
  • Fixed Uniform dropdown menus on Chrome 50 on Android
  • Fixed out of memory issues when the site has a lot of large forms


20 April 2016

  • Fixed an issue with the reCAPTCHA validator on some servers
  • Fixed an out of memory issue on the Form Builder when the site has many forms
  • Fixed a PHP warning when adding a CSS style with no value
  • Added a new variable for the browser User Agent string


24 March 2016

  • Fixed an issue introduced in the last update with element labels which have custom CSS


11 March 2016

  • Fixed an issue with mousewheel scrolling in large popup forms in some themes
  • Fixed a couple of issues on WP 4.5 beta
  • Fixed a 404 error in the Storm form theme
  • Updated Chinese translation


1 December 2015

  • Fixed an empty value bug when submitting the Time element in 24 hour mode
  • Removed browser validation effects on the email input field


24 November 2015

  • Added placeholder option to elements that support it
  • Added the Regex validator as an option for the Email Address element
  • Changed the input type to email for the Email Address element
  • Fixed an issue with reCAPTCHA inside a popup form
  • Fixed an issue with the Time element if it’s empty when submitted


16 October 2015

  • Added ‘compact’ size option for reCAPTCHA
  • Improved responsive styles for fancybox on devices
  • Added month translation fields to the Date element settings
  • The generated CAPTCHA images are now retina ready


29 September 2015

  • Updated the jQuery Form script to the latest version
  • Fixed a 404 error with the Agent Uniform theme
  • Fixed dashboard widget if the form name is long
  • Fixed an issue when pasting the form shortcode into the Visual editor


26 August 2015

  • Added a way to call the reset form function with custom JS
  • Added minor tweaks to the React form theme


15 August 2015

  • Fixed an issue with Month translations when using WPML
  • Fixed the plugin update process via Ajax on the Plugins page
  • Fixed reCAPTCHA field not showing in the popup when opened more than once
  • Fixed blank options in the preview and default value for the Date field
  • Fixed drag/drop in the Form Builder on devices
  • Added an option to show headings on the Time element dropdown menus
  • Added Start hour / End hour options to the Time element
  • Added a Time validator
  • Added an option to show the content of an HTML field when viewing entry
  • Added an option to reset, clear or keep form values after submitting the form
  • Added compatibility for WP 4.3
  • Added Spanish translation (partial)


26 June 2015

  • Fixed a rare issue with saving entries
  • Fixed the entry layout when printing in Chrome
  • Fixed a security issue


17 June 2015

  • Fixed an issue with required file upload fields being allowed empty in IE10+
  • Fixed an issue with file upload fields not resetting properly in IE10+
  • Fixed a rare issue where conditional email recipient rules can break the form builder
  • Fixed a PHP warning when starting a session if the session ID contains invalid characters
  • Added a filter for read/unread entries on the entries list
  • Added Chinese translation


28 May 2015

  • Fixed a compatibility issue with the popup widget on some themes
  • Updated the qTip2 tooltip script to the latest version


27 May 2015

  • Fixed a bug with conditional logic after the form is reset
  • Fixed the reCAPTCHA language selector
  • Fixed reCAPTCHA error after the first form submission
  • Changed the loading gif to have a transparent background


12 March 2015

  • The SMTP password option is now a password field and not visible in the settings when a password is saved
  • Added support for using the variable {admin_email} in the email settings in the form builder
  • Added a cache for conditional logic which greatly improves performance in forms with many logic rules


16 January 2015

  • Added a responsive option for forms, this is enabled by default for new forms, for existing forms it can be enabled at Form Builder → Settings → Style
  • Added a new light form theme: React
  • Updated reCAPTCHA to the new version
  • Added hooks to allow the plugin JS and CSS to be enqueued conditionally
  • Added partial Swedish translation file
  • Improved speed of saving forms


11 September 2014

  • Fixed bug with tooltip event option not being saved in the form builder
  • Fixed strict error when uninstalling
  • Added a ‘change’ event on the Date dropdown menus when choosing a date in the Datepicker
  • Fixed conditionally hidden values not being empty when saving to custom database
  • Changed the Add Quform button to be the same as the Add Media button in the post editor
  • Added primary key to entry data table


16 July 2014

  • Fix the form builder database fields being populated by JavaScript code when the Mootools library is loaded on the page
  • Improved form builder loading speed when database fields are set up
  • Fix PHP strict error when activating the plugin
  • Remove space between inline JS to prevent JS errors when wpautop is applied on the form
  • Changed the default date format to one that doesn’t include number suffix e.g. ‘th’
  • Added a few more date formats


25 April 2014

  • Added French translation
  • Added partial Croatian translation
  • Changed Ukrainian locale code to ‘uk’


23 April 2014

  • Fixed form builder CSS styles in WP 3.9
  • Added action hook iphorm_post_validate which is called after successful form validation


5 February 2014

  • Only show an error when sending emails if WP_DEBUG is on
  • Added iphorm_pre_display hook when showing the form after submitting it in non-Ajax mode


22 January 2014

  • Fixed the SWFUpload script to stop errors with other scripts when some jQuery selectors are used
  • Fixed Uniform not setting the select value correctly when the form is reset


16 January 2014

  • Fixed an error with Uniform and IE


13 December 2013

  • Fixed CSS issues with WP 3.8
  • Fixed an error with Uniform and IE10
  • Fixed a script enqueueing problem if the plugin name is translated or changed
  • Added hooks allowing the plugin name to be changed on the WP menu and on page titles
  • Fixed a rare problem saving form data to a custom database
  • Added Persian translation (partial) – thanks to beeZness (


21 August 2013

  • Fixed an issue with no update notification being displayed when a new plugin version is released
  • Added a “Check for updates” button to the plugin Settings page
  • Added an email “Return-Path” address option to the plugin Settings page
  • Fixed a bug with Hidden field labels in the entries list table heading
  • Added Portuguese (Brazil) translation


6 August 2013

  • Fixed the popup form script (Fancybox) to be compatible with WP 3.6


5 August 2013

  • Fixed conditional logic settings issue in WP 3.6


30 July 2013

  • Fixed CSS conflicts with the WP 3.6 Twenty Thirteen theme
  • Added a new dark form theme “Storm”


10 July 2013

  • Fixed the upload progress bar sometimes exceeding 100% width


10 July 2013

* Quform is no longer compatible with WordPress v3.1, version 3.2 or later is now required *

  • Fixed an issue submitting the form in IE9 with a file upload field in the form
  • Added countries back to the translation file


30 May 2013

  • Fixed a conflict with the MyMail plugin
  • Updated the plugin and 3rd party scripts to be compatible with jQuery 1.9
  • Updated qTip2 to latest stable release
  • The plugin will now enqueue the WordPress versions of the jQuery UI scripts in WP 3.3+
  • Added compatibility with WordPress 3.6 (beta)
  • Bulk options such as Countries and States etc have been removed from the translation file


4 April 2013

  • Fixed a bug with conditionally hidden elements with custom validators
  • Fixed the “Browse text” and “Default text” options of the File Upload element not saving properly
  • Fixed the Uniform File Upload field height in IE
  • Fixed the shortcode Insert button not working in some situations


25 February 2013

  • Fixed the ending Group element always displaying the name “New”
  • Fixed placeholder variables in email content not being formatted correctly
  • Fixed HTML encoded characters displaying in exported entries


13 February 2013

  • Added an option in the Group settings to show the Group name in the default notification email
  • Fixed the jQuery Smooth Scroll plugin to be compatible with jQuery Tools Scrollable
  • Updated the German and Italian translations


25 January 2013

  • Fixed an incorrect error message with the Length validator
  • Added a confirmation when leaving the form builder page if there are unsaved changes
  • Added a BCC option to the notification email settings
  • Fixed the “Use Ajax” option, it will no longer cause a JavaScript error when disabled
  • Added a mbstring extension check to the server compatiblity section
  • Added an option to disable Uniform and SWFUpload output from the plugin settings
  • Fixed a bug with the placeholder values for post ID, post title and referring URL
  • Added a new placeholder value {entry_id} that returns the ID of the submitted entry
  • The global border/background/text colour settings are now also applied to textareas
  • Updated the jQuery UI, qTip2 and InFieldLabels scripts
  • Added more jQuery Datepicker localizations
  • Shortened the form unique ID hash
  • Added a filter to override the form unique ID, you can use this to have static ID attributes within the form HTML
  • Added an error class to the wrapper of elements with errors
  • Fixed redirecting on successful submit when JavaScript is disabled
  • Added hooks for modifying the success redirect URL
  • Added code to throttle the update check to once per hour
  • Added a unique ID display in the Hidden element settings
  • Conditionally hidden elements no longer display in the notification email or when viewing entries
  • Added options to display empty fields in the notification email and when viewing entries, and they are now hidden by default
  • Fixed a compatibility issue with the Jigoshop plugin
  • Fixed the Regex validator
  • Fixed the form shortcode being wrapped in <pre> tags when pasting into the page visual editor


12 December 2012

  • Fixed an error with WordPress 3.5
  • Fixed a compatibility issue with W3 TotalCache JavaScript minification
  • Removed the blank custom.css file
  • Removed the Fancybox styles that were causing 404 errors in IE
  • Changed the image preloading JavaScript to run after the page has fully loaded
  • Fixed the success redirect when JavaScript is disabled
  • Added full Italian translation file
  • Added partial Bulgarian translation file
  • Updated Dutch translation file
  • Added some more date format options
  • Changed the plugin path constants to work if the plugin is in a symlinked directory


10 March 2012

  • Fixed an issue with conditional logic in IE7 and 8


5 March 2012

  • Fixed an issue where conditional logic breaks in IE7/IE8
  • Fixed an issue with showing values of arrays in the plain text email


14 February 2012

  • Renamed the plugin to Quform
  • Fixed a bug with file permissions with non-Flash uploaded files
  • Fixed Uniform script to be compatible with jQuery 1.6
  • Added hooks to write your own validation code
  • Added a hook to pass custom options to the datepicker
  • Fixed a bug with submitting the form with Uniform disabled
  • Added the Russian and Ukrainian translations – thanks to Protera
  • Fixed the plugin submitting twice if the form had been moved in the DOM
  • Added an option to center Fancybox in the viewport after conditional logic is applied
  • Fixed slashes being added to submitted form data
  • Changed the form builder tab script to jQuery Tools to avoid conflicts with other plugins
  • Added a server compatibility section to the settings page
  • Fixed a bug with reCAPTCHA and scrolling in Chrome
  • Changed the popup script to use inline HTML instead of an Ajax request. If you were using the variable “Referring URL” in a previous version for a popup form, you should change it to “Form URL”. With this change you can now access more variable data in a popup form – such as Form URL, Referring URL, Post title, Post ID.
  • Fixed a bug with Uniform radio buttons with two of the same form on one page
  • Fixed a bug with the reCAPTCHA field with conditional logic
  • Shortcodes are now parsed inside the HTML element content and form/group/element descriptions
  • Fixed the reCAPTCHA field inside a popup
  • Fixed the Flash uploader button inside a popup in Safari 4
  • Fixed instability in the form builder if an error occurs when one of the elements
  • Added the group name to the end group element
  • HTML is now allowed in group title, descriptions and radio/checkbox options
  • Added an option to swap day and month in the Date element
  • Added an automatic fix for themes with the [raw] shortcode
  • Fixed the autoreply email format option not saving properly


12 January 2012

  • Fixed the group column alignment not saving properly
  • Fixed the plugin include files from being visible from outside the plugin
  • Fixed notice error in widgets
  • Fixed form preview breaking with certain themes or plugins
  • Fixed it so that viewing the dashboard widget needs view entries permissions
  • Fixed using background images and quotes within the CSS system
  • Fixed a CSS bug with group title and group element wrapper
  • Fixed some form builder CSS bugs in IE7
  • Added the ability to add variables to the success message
  • Added the German translation – thanks to Roland Dietz
  • Added the German states as bulk options


21 December 2011

  • The plugin is now compatible with WP 3.1 again
  • The previous change to move the CAPTCHA fonts to a temporary directory now only happens on Windows systems
  • Fixed the reCAPTCHA allowing any text as a solution
  • The error messages for reCAPTCHA and CAPTCHA elements can now be translated in the element settings
  • Fixed the file upload custom error messages not working
  • The HTML element now has an option to act like a normal element, enabling conditional logic and fitting into groups.
  • Added more global styles to add CSS to all parts of the submit button
  • Added the Dutch translation – thanks to Paul Backus (


16 December 2011

  • Fixed blank notification emails in HTML format
  • Fixed theme and language backups during plugin upgrades
  • Fixed the plugin upgrade when done via an FTP connection
  • If a custom.css file exists in the /css/ directory it is loaded, this can be used for minor CSS overrides that do not
    merit a theme. This file will not be removed by plugin updates.
  • If you create a .js JavaScript file with the same name as your theme .css file, it will be loaded into the page. You can use this
    to create theme-specific JavaScript such as image preloading.
  • The success message no longer appears momentarily when redirecting on success
  • Fixed a bug with Length validator
  • Added a new option “Inherit” for group label placement and this is now the default setting
  • Fixed an issue with the plugin upgrade on Windows systems after adding a CAPTCHA element to a form
  • Changed the temporary directory to use WP function get_temp_dir()
  • Date and time dropdowns are now able to be styled using the CSS system
  • Uniform selects now take the width of the base select element
  • Added an option to have columns inside group floating left as well as the default proportionally spaced
  • Added an option set the label placement on a per element basis
  • Added an option to clear default value on click
  • Added options to have tooltips displayed with a help icon instead of interacting with the field, the options can be also be changed on a per element basis
  • Added an option in the Date element to show months as numbers instead of text
  • Added a bulk options import feature to Checkboxes/Multiple Choice and Dropdown Menu elements. You can choose from predefined import data or enter your own.
  • Fixed an issue saving forms if the Prototype library is loaded on admin pages
  • Fixed Uniform file upload form reset bug
  • Fixed a bug with the File Upload validator when required
  • Added exporting submitted entries to a CSV file
  • Added image preloading on frontend
  • Revamped the way that forms can be displayed in a lightbox (Fancybox). There’s now an option
    when inserting the form into a post/page to show the form in a lightbox
  • Added a new shortcode to display forms in a lightbox (Fancybox)
  • Added a new widget to display forms in a lightbox (Fancybox)
  • Added options to disable the output of inluded JavaScript plugins
  • Added a feature to prevent duplicate values being submitted to the same form if it already exists in the entries database.
  • Fixed an issue with plain text Autoreply email content
  • Changed database version check to the init hook
  • Added conditional logic – the ability to show or hide fields based on the values of other fields.
  • Added language option to reCAPTCHA element
  • Entries are now stored in UTC time and are converted to the local timezone when viewing. The submit times of entries submitted before this update may change.
  • Exporting of entries now takes local timezone into consideration.
  • Added a feature to set the default value of fields dynamically from URL parameters, shortcode attributes and filter hooks.


11 November 2011

  • Fixed an error when adding a group element by dragging
  • Fixed some broken translatable strings
  • Improved the form builder UI when translated
  • Links to edit the form and edit the table layout now appear correctly above the entries list
  • Flash of Unstyled Content has been hidden on file upload fields
  • HTML tags are no longer stripped form the entries list, so it can include links to uploaded files and email addresses
  • Fixed dashboard widget unread entries query
  • Fixed an database issue with the entries list with large amounts of data
  • Day, Month and Year headings in the Date element are now translatable from inside the form builder
  • am and pm in the Time element are now translatable from inside the form builder
  • All <ul> and <li> tags in the form HTML have been changed to <div> to prevent interference with
    theme CSS
  • jQuery UI Datepicker has been added as an option on the Date element, there are 24 themes
    and 62 language options to choose from
  • Fixed temporary upload cleanup scheduled task
  • Fixed previewing a form in a new tab in IE


1 November 2011

  • Reverted the previous change to choose between valid XHTML 1.0 Strict or valid HTML5,
    the form will always output valid XHTML 1.0 Strict
  • Added an Ajax hook for displaying the form in a lightbox
  • Added documentation on how to display a form in a lightbox


31 October 2011

  • Fixed plugin translation issue
  • Added an option to select between valid XHTML 1.0 Strict or valid HTML5
  • Removed global style overrides from front end base stylesheet
  • Custom translations are now saved during plugin upgrades
  • Added documentation on how to translate the plugin


27 October 2011

  • Initial release