HDForms | Contact Form Builder
HDForms. The easiest way to create contact forms HDForms was designed and built to be a super easy system to create contact forms of any size. The forms are automatically validated for user input, sanitized for security, and, of course, sent without fuss! HDForms comes with an easy to use visual form builder, and can be used for small contact forms, intake forms, request for quotes, or large applications. With HDForms, you can even intelligently show or hide certain fields with ease – no coding required! Video A video is currently being made that will highlight just how easy HDForms is to use. Check back soon! Features include 👍 Super easy to use (I really can’t express enough how easy HDForms is to use) Will work with just about any well-coded theme right out of the box Mobile-friendly (responsive design) Form builder (block based) Column support Custom toggles and triggers to show/hide elements Emails are automatically built and validated Automatic spam protection Run your own function before and after form submit (for you devs out there!) Pretty 🙂 Pretty much all of the standard features required for a form builder, with more options coming soon. Upcoming Features ⏳ The following features are not yet included in HDForms, but are on the road map for future updates. Some of these features will be finalized in the next couple of weeks, others may be months down the line. This list is not in order of importance. File uploader element Better localization (for things like the phone number, date, and currency fields) Translation ready. Sorry! English only for now 🇨🇦 ❓ HOW TO USE | TUTORIAL ❓ Full tutorial and documentation is still being written. This section, along with a link to the full documentation will be updated ASAP. Once a form has been created and saved, you can use the build-in Gutenberg block, or you can just copy and paste the shortcode anywhere on the site to render the form. You can also use WordPress’s do_shortcode() function to render the form: Triggers You can view the HDForms About / Options page to see an example of how triggers and toggles work. Setting up triggers is by far the most complicated thing to do, but I hope that this quick tutorial will help. You’ll need to know two things in order to create triggers. The trigger element, and the toggle element. The trigger element is the element that we check if its input has changed, and the toggle element is the element we either show or hide. In the above example, the trigger element is the checkboxes (specifically the one for “other”), and the toggle element is the text input. In HDForms, each element you create gets a special and unique ID. You can find this ID by selecting the element to edit it. You’ll need to get the ID of the trigger element and paste it into the toggle element’s “Trigger Element” field. That’s it! By default, the toggle element will remain hidden unless the trigger element gets some data. But what about, for example, like above, where I only want the toggle to happen if a certain checkbox is selected? In this case, we also want to pass along what “option” we want the trigger to work on (note: this is only for radio or checkboxes). This can be easily done by adding [x] to the end of the ID, where x is the number of the option. So in the above example, “other” is the fourth (4) listed option, so I would append [4] to the end of the ID. A full example trigger element id might look something like this hdf_3481_checkbox_oxpkhp[4]
Top keywords
- element17×2.76%
- hdforms9×1.46%
- trigger8×1.30%
- form7×1.14%
- trigger element7×1.14%
- id6×0.98%
- toggle6×0.98%
- example5×0.81%
- forms5×0.81%
- toggle element5×0.81%
- triggers5×0.81%
- above3×0.49%
Store file uploads for Contact Form 7
By default, Contact Form 7 dose not keep data it sends trough it’s contact forms. While plugins like Flamingo save that data, uploaded files are not added to Media Library. This plugin will save uploaded files to Media Library before email is sent by CF7. This plugin will raise an event with the the full file path & name. Subscribe to nmr_create_attachment_file_name filter to get and/or update data before attachment is added to media library. // The filter callback function. function example_callback( $file_name ) { // (maybe) modify $file_name. return $file_name; } add_filter( 'nmr_create_attachment_file_name', 'example_callback', 10, 1 ); Subscribe to nmr_before_insert_attachment filter to be able to change attachment attributes: caption and description are ‘post_excerpt’ and ‘post_content’. For other attributes, check documentation for wp_insert_attachment. // The filter callback function. function before_insert_attachment_callback( $attachment ) { // (maybe) modify $attachment array. return $attachment; } add_filter( 'nmr_before_insert_attachment', 'before_insert_attachment_callback', 10, 1 ); Optionally, subscribe to nmr_should_skip_save_attachment_to_media_library filter to be able to skip saving the attachment to media library: return true to skip, false is the default behaviour that saves the attachment to media library. Filter nmr_before_insert_attachment will not be called if skip was true. // The filter callback function. function skip_media_library_callback( $skip_save_to_media_library ) { // return true to skip saving to Media Library, false to save. return true; } add_filter( 'nmr_should_skip_save_attachment_to_media_library', 'skip_media_library_callback', 10, 1 ); This plugin will send the final attachment id if you are interested in getting other details, like attachment url. Listen to nmr_create_attachment_id_generated action. // The action callback function. function example_callback_id_generated( $attachment_id ) { // (maybe) do something with the args. $url = wp_get_attachment_url( $attachment_id ); } add_action( 'nmr_create_attachment_id_generated', 'example_callback_id_generated', 10, 1 ); Docs & Support Check the support forum on WordPress.org. If you can’t locate any topics that pertain to your particular issue, post a new topic for it. Store file uploads for Contact Form 7 Needs Your Support It is hard to continue development and support for this free plugin without contributions from users like you. If you enjoy using -Store file uploads for Contact Form 7- and find it useful, please consider making a donation. Your donation will help encourage and support the plugin’s continued development and better user support. Privacy Notices With the default configuration, this plugin, in itself, does not: track users by stealth; write any user personal data to the database; send any data to external servers; use cookies. It will, however store uploaded files trough Contact Form 7 in WordPress Media Library. Make sure your website users are aware of this fact!!! Pro Version Need more? The Pro version adds 13 features: Per-form control — choose which forms save files, set custom folder and rename pattern per form Auto-rename — rename files using patterns like {name}-{date}.{ext} from other CF7 fields Unique filenames — automatically avoid overwriting files with the same name Custom upload folder — save files to a specific subfolder per form File URL in email — replace [file] mail tag with a clickable link instead of an attachment Skip-mail compatibility — save files even when CF7’s skip_mail: on is set Upload log — admin screen listing every uploaded file with form, date, size, and download link Private files — store files outside the Media Library with access protection Admin notification — receive an email with file link on every upload Flamingo integration — link uploaded files to Flamingo inbound message entries Auto-delete — remove uploads older than a configurable number of days Image resize / compress — resize and compress images on upload Duplicate detection — skip saving if the same file was already uploaded (MD5 check) Get Pro →