Linux 软件免费装
Banner图

Contact Form 7 Multi-Step Forms

开发者 webheadllc
更新时间 2024年8月5日 11:18
PHP版本: 4.7 及以上
WordPress版本: 6.6
版权: GPLv2 or later
版权网址: 版权信息

标签

form contact contact form 7 multiple pages multistep form

下载

1.3 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 1.4 1.4.1 1.4.2 1.4.3 1.5 1.6 2.0 2.0.4 2.0.5 2.0.6 2.0.7 2.0.8 2.0.9 2.1 2.2 2.21 2.25 2.26 3.0 3.0.3 3.0.4 3.0.7 3.0.8 3.1 3.1.1 3.1.2 3.2 4.0 4.0.1 4.0.2 4.0.7 4.0.8 4.0.9 4.1.1 4.1.2 4.1.4 2.23 2.24 3.0.9 4.1 4.1.5 1.01 1.4.4 4.1.6 4.1.7 1.02 2.0.1 2.0.2 4.1.8 4.1.9 4.1.91 2.0.3 4.2.1 4.3 1.0 1.3.6 3.0.1 3.0.2 4.1.92 4.2 1.1 2.22 4.3.1 4.4

详情介绍:

I needed a contact form that spanned across multiple pages and in the end would send an email with all the info collected. This plugin adds onto the popular Contact Form 7 plugin to do just that. Sample of this working is at https://webheadcoder.com/contact-form-7-multi-step-form/ Requires the Contact Form 7 plugin, version 4.8 or above, by Takayuki Miyoshi. Usage
  1. Create one page or post for each step in your multi-step form process. If you have 3 steps, create 3 pages/posts. You will need the urls to these when creating your forms.
  2. Create a Contact Form 7 form.
  3. Place your cursor at the end of the form.
  4. On the "Form" tab of the Contact Form 7 form, click on the button named "multistep".
  5. In the window that pops up, check the checkbox next to "First Step" if this is the first step of your multi step forms. If this is your last step in the multi step forms, check the "Last Step" checkbox. All other checkboxes are optional.
  6. The Next Page URL is the url that contains your next form. If this form is the last step, you can leave the URL field blank.
  7. Click "Insert Tag"
  8. Save your completed form and place the form's shortcode into the appropriate Page/Post you created in step 1.
  9. Repeat for each form in your multi-step form process.
  10. On the last step, you probably would want to send an email. Make sure to check the "Send Email" checkbox in step 5. On the Mail Tab, simply enter the mail-tags as you normally would. For example if your first form has the field your-email you can include [your-email] in the Mail tab on your last form. Note: CF7 will see this as an error because your-email may not be displayed on the current form. You can safely ignore this error.
Multistep Tag Options Additional Tags [multiform "your-name"] The multiform form-tag can be used to display a field from a previous step. Replace your-name with the name of your field. This is only for use on the Form tab, this tag will not work in the Mail tab. [previous "Go Back"] The previous form-tag can be used to display a button to go to a previous step. Replace Go Back with text you want to show in the button. Messages Tab When a visitor to your site visits the 4th step in your multi step form without filling out the 1st step, the message "Please fill out the form on the previous page." will be displayed. You can change this on each form in the Messages tab. What this plugin DOES NOT do: PRO Version If you expect to have a lot of data submitted through your multi-step forms, the Pro version may be able to help you better. The PRO version uses Session Storage so it is able to handle roughly 1,000 times more data for your multiple forms. In total it can handle about 5MB vs 4KB in the free version. Currently the Pro version REQUIRES the WordPress REST API and Contact Form 7 AJAX Submission to be enabled. Another feature the Pro version offers is the ability to skip steps with the "Contact Form 7 - Conditional Fields plugin". Learn more here.

常见问题:

The Next button doesn't show up

Like all Contact Form 7 forms, you still need to add a button to submit the form. Use the normal submit button with any label you want like so [submit "Next"]. The multistep form tag is a hidden field and tries not to add any spacing to your form. In this effort, anything directly after this tag may be hidden. To prevent this, add a carriage return after the multistep form tag, or just follow the directions and place the form tag at the end of the form.

I keep getting the "Please fill out the form on the previous page" message. What's wrong?

It could be one of these reasons:

  1. Your Caching system is not allowing cookies to be set in a normal way. No workarounds or fixes are planned at this time. You will need to turn off caching for cookies named cf7*.
  2. Your protocol or domain is not the same on all pages. Each page that holds a form needs to have the same protocol and domain. If your first page uses https like https://webheadcoder.com, your second page cannot be http:// or a subdomain of that.
  3. Make sure your first form has the first_step attribute in the multistep form-tag, like: [multistep multistep-123 first_step "/your-next-url/"]

Why are no values being passed from one form to the next form?

If your form reloads the page after hitting the submit button, you either disabled the WordPress REST API or javascript for Contact Form 7 isn't working correctly. Please see the Contact Form 7's troubleshooting page for more information: https://contactform7.com/why-isnt-my-ajax-contact-form-working-correctly/

How can I show a summary of what the user entered or show fields from previous steps?

[multiform "your-name"]\ The multiform form-tag can be used to display a field from a previous step. Replace your-name with the name of your field.

My form values aren't being sent in the email. I get [multiform "your-name"] instead of the actual person's name.

The multiform form-tag should only be used on the Form tab. On the Mail tab follow the instructions from the Contact Fom 7 documentation. So if you wanted to show the your-name field, type [your-name]. It's also important that the last form has the multistep form-tag.

Can I have an email sent on the first step of the multi-step forms?

Yes, you can. Make sure to check the "Send Email" checkbox or have the send_email attribute in the multistep form-tag like: [multistep multistep-123 first_step send_email "/your-next-url/"].

My forms are not working as expected. What's wrong?

  • Make sure you have the multistep tag on each and every form.
  • It is very common for other plugins to have javascript errors which can prevent this plugin from running properly. Deactivate all other plugins and try again.

Why "place your cursor at the end of the form" before inserting the multistep tag?

The multistep form tag is a hidden field and tries not to add any spacing to your form. In this effort, anything directly after this tag may be hidden. To prevent this, add a carriage return after the multistep form tag, or just follow the directions and place the form tag at the end of the form.

How do I get Flamingo or CFDB7 to not save every form?

Make sure to check the "Skip Save" checkbox or have the skip_save attribute in the multistep form-tag like: [multistep multistep-123 skip_save "/your-next-url/"].

When checkbox fields are left unchecked they appear as [field-name] in the email. How do I resolve this?

When checkboxes are not checked they aren't submitted through the form so the last step of the form doesn't know the unchecked checkbox field exists. To get around this issue add a hidden form tag like [hidden field-name] to the last step. This way the last step will either submit the previously set value or a blank value.

更新日志:

4.4 4.3.1 4.3 4.2.1 4.2 4.1.92 4.1.91 4.1.9 4.1.8 4.1.7 4.1.6 4.1.5 4.1.4 4.1.2 4.1.1 4.1 4.0.9 4.0.8 4.0.7 4.0.6 4.0.5 4.0.4 4.0.3 4.0.2 4.0.1 4.0 In Version 4.0 the format of the multistep form-tag has changed dramatically. The old format is backwards compatible and will still work until January 2021. Beyond that the old format is not guaranteed to work with newer versions. More Info: https://webheadcoder.com/contact-form-7-multi-step-forms-update-4-0/ 3.2 3.1.2 3.1.1 3.1 3.0.9 3.0.8 3.0.7 3.0.6 3.0.5 3.0.4 3.0.3 3.0.2 3.0.1 3.0 2.26 2.1 2.0.9 2.0.8 2.0.7 2.0.6 2.0.5 2.0.4 2.0.3 2.0.2 2.0.1 2.0 1.6 1.5 1.4.4 1.4.3 1.4.2 1.4.1 1.4 1.3.6 1.3.5 1.3.4 1.3.3 1.3.2 1.3.1 1.3 1.1 1.02 1.01 1.0