Categories
WordPress Plugins

Contact Form 7

This post is no longer updated. Move to Contact Form 7 official site.


Download | Plugin Homepage | FAQ | Support Forum

(日本語の説明はこちら)

Summary

screenshot

Just another contact form plugin. Simple but flexible.

  • Supports multiple contact forms.
  • You can customize form and mail contents with simple markup.
  • AJAX submitting with jQuery Form Plugin.
  • Spam filtering with Akismet.
  • Bot prevention with CAPTCHA.

Download and Install

Download the latest release from WordPress.org plugin directory.

  1. Upload whole contact-form-7 folder to the /wp-content/plugins/ directory
  2. Activate the plugin through the ‘Plugins’ menu in WordPress

Usage

  1. Open admin page [Options] – [Contact Form 7] [Manage] – [Contact Form 7].

    Update: If you are using WordPress 2.7 or greater, you can find the admin page under [Tools] – [Contact Form 7].

  2. Edit default “Contact form 1” or add new and save it.
  3. Copy [contact-form ...] code and paste it into the content of any posts you need the contact form.

FAQ

See Contact Form 7 FAQ

How to customize form and mail contents

You can use “tags” in several fields. Contact Form 7’s “tag” is formed string enclosed in square brackets [].

A tag used in form content is replaced by HTML form control element like <input> or <textarea>.

A tag used in mail template is replaced by user input of element with the same name.

wpcf7-desc

In this picture, a tag [textarea your-message ...] inserted in form content is replaced by <textarea> tag with name="your-message" attribute.

When a visitor input into this <textarea> field and submit, Contact Form 7 generates a mail based on mail template. Since message body field has [your-message] tag, this tag replaced by the user input message.

Tags in form content

You can use the following types of tags in form content.

Type Replaced by Validated as
text <input type="text" /> Any text
text* <input type="text" /> Any text / Required
email <input type="text" /> Email address
email* <input type="text" /> Email address / Required
textarea <textarea> </textarea> Any text
textarea* <textarea> </textarea> Any text / Required
select <select> </select>
select+ <select> </select>
checkbox <input type="checkbox" /> ...
checkbox+ <input type="checkbox" /> ...
radio <input type="radio" /> ...
captchac <img /> CAPTCHA
See How to use CAPTCHA
captchar <input type="text" />
submit <input type="submit" />

The syntax of tag is not so easy. You can use Generate Tag menu under Form textarea to make a tag you need.

I show you some examples of tags.

  • [text your-name 40/100 "John Smith"]

    This tag is replaced with:
    <input type="text" name="your-name" size="40" maxlength="100" value="John Smith" />

  • [email* your-email 60/ id:email]

    <input type="text" name="your-email" id="email" size="60" />

  • [textarea your-message 80x15 "Write message here."]

    <textarea name="your-message" cols="80" rows="15">Write message here.</textarea>

  • [select your-country "China" "India" "other"]
    <select name="your-country">
      <option value="China">China</option>
      <option value="India">India</option>
      <option value="other">other</option>
    </select>

I wrote about tag syntax.

How to use Akismet on Contact Form 7

1. You need Akismet plugin. If you have not activated it yet, activate it first.
2. Open Contact Form 7’s admin page and edit Form text area as:

  • Add akismet:author option to the tag of field which requires sender’s name.
    Example: [text* your-name akismet:author]
  • Add akismet:author_email option to the tag of field which requires sender’s email address.
    Example: [email* your-email akismet:author_email]
  • Add akismet:author_url option to the tag of field which requires sender’s URL.
    Example: [text your-url akismet:author_url]

Once you have activated the Akismet plugin and at least one of the akismet: options is set, Contact Form 7 will send all of a sender’s input as well as any other information related to input activity to the Akismet server. Akismet will then judge whether this input is likely to be spam.

When Akismet judges a message as spam, Contact Form 7 sends no mail and shows a response message with an orange border line (the third example in the picture below).

To make sure the spam filtering is working, send a message with “viagra-test-123” as the sender’s name. If the test is a success, the message will be judged as spam.

Changelog

0.9 (2007/04/30)
Initial release.
1.0 (2007/05/20)
Tag helper.
1.1 (2007/08/02)
File restructuring.
1.2 (2007/08/16)
jQuery Form Plugin introduced.
1.3 (2007/08/26)
New tag type: [select]
1.3.1 (2007/08/26)
Critical bug about JavaScript loading fixed.
1.3.2 (2007/09/03)
Bug fix around jQuery.
1.4 (2007/09/07)
Akismet spam filtering introduced.
1.4.1 (2007/09/11)
Add Spanish and Catalan translations.
1.4.2 (2007/09/13)
Add German translation.
1.4.3 (2007/09/15)
Add Polish translation.
1.4.4 (2007/09/17)
Add French translation.
1.5 (2007/10/07)
CAPTCHA introduced.
1.6 (2007/10/17)
Mail (2) and UI improvement for admin page.
1.6.1 (2007/10/27)
Sidebar widget support.
1.7 (2007/11/27)
New tag type: [select+], [checkbox], [checkbox+] and [radio]
1.7.1 (2007/12/06)
Made wpcf7 variable global. Polish translation updated.
1.7.2 (2007/12/13)
Bugfix. Czech translation added.
1.7.3 (2007/12/23)
New default: and label-first options added.
1.7.4 (2007/12/30)
select+ and checkbox+ tag types removed. multiple and exclusive options added.
1.7.5 (2008/01/26)
Two fixes and include_blank option.
1.7.6 (2008/03/02)
New acceptance tag added.

1,401 replies on “Contact Form 7”

It’s working great now (before mails could not be sent). MailPress fixed my mail problems (so not related to the plugin). However, I’m not able to use Askimet – whatever emal addy I put in gets considered spam… so I’m using the capcha (which is so simple – is it really usefull?).

I’ve noticed a strange behavior with this plug-in on a WP install that I manage. In IE7/Win, the form works on all pages of the site except for the homepage. I fixed it through brute force (in PHP, I check to see if the URL = “/”, and if it does, I set it to the page permalink URL), but thought it was worth mentioning. The behavior does not occur in FF/Win, FF/Mac or Safari/Mac.

Hello I love Contact Form 7 but am having a problem creating multiple contact forms. When I create a second form and look for the code to paste into the page the field remains brown and does not show the code to put into the wp admin page for the form. I’ve tried creating multiple forms and have pasted this code for a new form for my newsletter
[contact-form 1 "newsletter"] and nothing seems to be working. Can anyone help??? It would be greatly appreciated

Hi I just stated using your plugin and I’m loving it. But after getting it all I created I test it and all I got back in the email was the [text …] messages, not the actual input. Help? Thanks

Hi There got a Question. Is it possible to implement the contact-form into the sidebar without using widgets? Havent found the command yet. Help would be apriciated.

Thank you

It was mentioned on the forum that future versions of the plugin would include a “thank-you” page option… How far off are we for that to happen? I would be more than happy to donate to the cause if I can get some help or an answer.

I have been trying to get the hacks to work on the forum and so far to no avail.

Thanks

Dan

It was mentioned on the forum that future versions of the plugin would include a “thank-you” page option… How far off are we for that to happen? I would be more than happy to donate to the cause if I can get some help or an answer.

I have been trying to get the hacks to work on the forum and so far haven’t had any luck.

Thanks

Dan

Nice app, most of it is working fine. Please advise what code to use in the Message Body so that the selection from a Drop Down Menu (or a Radio Button) will show.

I’ve seen this question asked before and visiting the questioners site…it looks like he didn’t find a solution.

So if anyone out there is getting info from a Drop Down menu back to them in their emails…please help!

Thanks in advance.

Ian

First of all, thank you very much for a great plug-in!

I’m interested in changing the message of “Your message has been sent. Thanks!” I’ve found the message statement in your code but after changing it I do not see my changes after I re-activate the plug-in. I do see the field size changes I made at the same time, however.

Can you please explain what I might be doing wrong?

Thanks again!
Tom

This is a very helpful Plugin. Thank you very much.
I would like to remove all the “breaks”
which are included automatically after each field name and each field. I would like to fully control the
layout with CSS. Coudl you please tell me what I need
to modify to suppress all the line breaks?

Many thanks.
Lise

Great plugin. But I have only one comment and one question….

Comment – if anyone is having troubles with this plugin not sending emails, it’s not the fault of this plugin, but your provider has disabled smtp mail functions. How to overcome this is to get the plugin Cimy Swift SMTP.

Question – how can I reduce the size of the text enter boxes to a reasonable length?

Thanks

Frank

Hi!

I love this plugin. However, I wanted the message (after you press send) “Your message was sent successfully. Thanks.” to be moved upwards. I mean I wanted it above “your name”. Its because when its down, there, its not noticeable til you browse down. How can I do that?

Or maybe in the future a pop-up message “Your message was sent successfully. Thanks.” :)

Thanks!

Hi,

I’ve just translated the “Messages” tab to Brazilian Portuguese.

Give me a buzz if you would like the rest of the stuff translated too.

“Messages – Hide

# Sender’s message was sent successfully

Sua mensagem foi enviada com sucesso. Obrigado.

# Sender’s message was failed to send

Sua mensagem não pôde ser enviada. Por favor, tente mais tarde ou entre em contato de outra maneira.

# Akismet judged the sending activity as spamming

Sua mensagem não pôde ser enviada. Por favor, tente mais tarde ou entre em contato de outra maneira.

# Validation errors occurred

Não foi possível validar sua mensagem. Por favor, revise os campos e tente novamente.

# There is a field that sender is needed to fill in

Por favor, preencha o(s) campo(s) apropriado(s).

# Email address that sender entered is invalid

Seu e-mail parece ser inválido. Por favor, revise-o.

# There is a field of term that sender is needed to accept

Para proceder, você deve aceitar os termos.

# Sender doesn’t enter the correct answer to the quiz

Sua resposta não está correta. Por favor, tente de novo.

# The code that sender entered does not match the CAPTCHA

O código digitado está incorreto. Por favor, tente de novo.

# Uploading a file fails for any reason

Não foi possível carregar o seu arquivo.

# Uploaded file is not allowed file type

Este tipo de arquivo não é permitido.

# Uploaded file is too large

O arquivo é grande demais.”

Bye the way, it’s a great plugin!

Hi, i have some problems with the new 1.9.5 Contact Form.
I get an error that the file was not located.. I updated it in wordpress. Some idè what i shoud do.?

Great form bytheway.!:D

I am using contact 7 forms I really need custom landing pages after the submit button was clicked successfully. Is there a code that can be added to the form to redirect to a specific url after submission.Need it ppc tracking.

Have an error message with the latest upgrade:

Warning: opendir(/home/taiwan/public_html/mydiscountfueloil.com/wp-content/uploads/wpcf7_uploads/) [function.opendir]: failed to open dir: No such file or directory in /home/taiwan/public_html/mydiscountfueloil.com/wp-content/plugins/contact-form-7/wp-contact-form-7.php on line 1558

I, just today, updated to the newest version of Contact Form 7 and all of a sudden the simple captcha stopped generating images. Is this a known issue? any fix or update for Simple captcha available/necessary? please help.

Thanks in advance!

Love this plugin. I’m having a problem, though. I was receiving emails with backslashes and html tags, so I changed it to send “html mail.” That fixed all the weirdness, but now I don’t have any paragraph breaks from the emails! Is there a fix for this?

Any chance of adding hidden fields to this? seems to be the one glaring omission from making this perfect :(

Also are you able to set values to drop down menus?

Turns out you can manually put in form tags into the contact form. So i guess this is the best option until updates.

issue i noticed recently:

in Opera on Linux (maybe others too) when the contact form displays, captcha doesn’t display. It simply says ‘captcha’. If try to submit, fails then displays captcha correctly.

great plugin!

[…] Contact Form 7 – Add  forms to your sites. Just another contact form plugin. Simple but flexible. Contact Form 7 can manage multiple contact forms, plus you can customize the form and the mail contents flexibly with simple markup. The form supports Ajax-powered submitting, CAPTCHA, Akismet spam filtering and so on. […]

Hi,
thank you for this great working plugin. I am using it on my site and also made an article for my german visitors about contact form 7 and the captcha plugin.

Hi, I’m surprised my form doesn’t send data via ajax – can you please provide an idea why this could be happening? What does the sending method depend on… Thank you very much.

Update: Solution: If you wp_deregister_script(‘jquery’), then it’s necessary to enqueue it with wp_enqueue_script(), it’s not enough to link it directly in html.

The data from the form is not being sent to my e-mail address but says that the message has been sent?

Sorry for the re-comment but iam also looking fora solution to centre the form, i have centred it in alignment on my blog but it still remains sat on the left side of the page?

Mattias, sorry for my late response. I’ve updated the translation on the development version. You’ll see it on the next release. Thank you so much!

Hi i love this widget much and i have a simple question here,

I’ve just input this code and it works perfect.

Photo Upload
[file PhotoUpload filetypes:jpeg|png|jpg|gif]

but how can i upload in multiple files?

[your-file] [your-another-file] didnt work out on this.

please help thanks!

Thanks for a great plugin. When i activate plugin, forms don’t has a background color and no borders, so I’ve make a little improvement in CSS, because it conflicts with my style. I’ve just add a one rule:

.wpcf7-form-control-wrap input, textarea {
background-color: #FFEFF8;
border: 1px solid #EC3A9E;
}

Also, it would be nice to add some lil’ icons to response messages.
Good Luck! Sorry for bad English :)

When I hit the submit button on the form it pulls up a page not found error screen instead of the messages options available in your plug-in. Any answers as to why that might be happening? Thanks for letting me know. Cheers!

Beware of using this with WordPress MU. It has a strange bug: if you use multiple forms, some forms may not show the ‘your message was sent successfully message’. It just has an empty “response” div with nothing in it. So your mails will be sent, but there will be no user feedback.

Since this form has a more complex ‘ajax’ feedback system — it’s basically impossible to find a way to make the form forward to a thank you page. If you look through the forums no one has really been able to make this happen.

If you are using WordPress MU I would think seriously before using this plugin.

I’m not getting any emails
I uploaded it, activated it and the form appears.
I left everything standard except in the “mail” part I put the email address I want it to go to.
When its all up I go to the form, fill it out and nothing happens lol.
it just says Email sent, thanks
but I dont get any message in my gmail email.

any ideas?
thanks

Does this work with wordpress 2.5.1?

marco

hi, i love this plugin. so far it’s the best plugin for email for wp. just one thing that i need to know: is it possible to do a conditional formatting in wp-form? the effect can be described as this:

you select something from a drop-down list, the the corresponding fields below changes according to the selection you’ve made. is it possible? please help.

thanks :)

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s