Check your site before reporting trouble, please!

I have been getting feedback from many Contact Form 7 users everyday. It gives me great pleasure to hear the voices of the users.

Some of what I hear, however, are reports of trouble. These resports are helpful to me in detecting bugs in the plugin, or to give me suggestions for enhancements to the plugin and documentation of it.

However, most of the recent reports of trouble that I have been getting are not with Contact Form 7. I find that most of the problems are caused by other issues, in particular, their invalid HTML structure, or conflicts with JavaScript which is loaded improperly by other plugins or themes.

In such cases, I can do nothing but tell them, “You should check your site and correct errors in it. This issue is actually caused by other plugins or theme you are using, and not a trouble of Contact Form 7″ But even when I make that clear to them, some of them keep claiming that there is a bug in Contact Form 7.

So I ask you users, before reporting trouble to me, please check your site on your own first:

Check your site with HTML validators and correct errors. Contact Form 7, as well as many other plugins, uses JavaScript to manipulate DOM objects represented by HTML. So if your HTML structure is not valid, the JavaScript can’t work correctly, of course.

There are many HTML validators, but I always recommend XHTML-CSS Validator as it has a cool appearance and is easy to use.

Even if HTML is okay, JavaScript conflicts between plugins or themes can cause errors. If you use Firefox (I highly recommend Firefox if you develop web sites), you can use the excellent Firebug to check JavaScript errors.

This is the trouble pattern I see these days most often. Some plugins and themes try to load JavaScript files in an improper way. And this results in the loading the same JavaScript files multiple times, and causes conflicts.

Open the HTML source of your problematic page and check it out. Do you find jquery.js in two or more places? If so, contact the developer of the plugin or theme which loaded the JavaScript, and ask him or her to look at this Codex page and fix the issue by using wp_enqueue_script(), instead of loading JavaScript in its own way.

Unfortunately, I don’t have enough time to answer all the reports of trouble or the support requests individually, so I won’t respond to them any more if you have not followed the steps above and checked your own site first.

If you have trouble but you don’t have the skills to check your site, and don’t know how to fix the problem, please submit your issue to the support forum with the URL of the site where the issue exists. Someone will check it the problem for you and help you fix it.

17 thoughts on “Check your site before reporting trouble, please!

  1. Hi, i had inspected today a Javascript crash of your plugin caused by the fact, that you miss loading (enqueuing) the jquery extension jquery.form.js and are calling afterwards .ajaxForm() that not exists.
    If you want the screenshot of Firebug you can have it.

    You can’t throw away your responsibility and targeting other authors, if you are responsible for such a script crash!

    Error: jQuery(“div.wpcf7 > form”).ajaxForm is not a function

    This has not been occured at my page but i had to solved it for somebody. This crash prevent later loaded (enqueued) scripts from execution and may set the site out of function!

  2. @codestyling So, what was the cause of miss-loading of jquery.form.js? Did you make it sure? If I were you, I’d do it first. I can’t throw the responsibility because it’s under your foot and I don’t have such long …

  3. The main issue for sites not longer working properly comes from the usage of multiple jQuery(document).ready() usage.
    If one of the scripts fails with an unhandled exception at this serialized call chain, any afterwards initializations won’t get called anymore. So if your initialization fails unhandled, you damage all other scripts could be nevertheless intitialized!
    Normally this would require an try/catch handling inside ready() function or tests, if all things are available, if they are not core elements of jquery.
    If something went wrong, your plugin may not work, but all other plugins may work as expected, cause only yours is out of function.
    Defensive programming is the goal. All scripts should get the chance of intialization. If they don’t work afterwards, it has to be found and fixed. But preventing 99% of page script code to work as expected while own script code fails early at init is in my opinion a not acceptable way.

  4. @codestyling, I haven’t considered that. I had a wrong way. Thank you for letting me realize the fact, and I’m sorry for my last comment. I’ll make changes soon.

  5. Hi Miyoshi, I’m finding that contact form 7 (WP 2.7 update) is ok and will submit in firefox3 but not in IE7. Site page validates and I can’t find any obvious error. I’m a firefox user but most of the web browsing community isn’t at the moment so it would be a shame to exclude them from this useful plugin…

    There is only one instance of jquery.js on the problem page.

  6. Hallo, when i try to send an e-mail with the contact from it shows me the green message that the e-mail has been send successfully but no e-mail arrived :/ Anyone can help me ?

  7. I get exactly the same as George – my site is showing ‘message sent successfully’ but the message is not turning up in my inbox….

  8. I have two forms–one for the contact page and a second within a text widget for newsletter sign-ups. In Explorer 7, the text widget submit icon spins and never sends the information, but the contact form works perfectly. I don’t have any duplicate jquery.js.

  9. My page validates, I have switched OFF all other plugins.

    THe form appears to work but the mail does not arrive in my email client.

    Could this be caused by a server setting? Any ideas

  10. I also have the same problem as George & Shrunk.
    While testing myself- my blog is showing ‘message sent successfully’ but the message has not arrived in my inbox.

  11. Hello, your plugin is just outstanding!
    Unfortunately it is impossible to see the dropdown menus of my website when I enable the plugin.
    I need it so badly that I have already contacted the author of the template but he doesn’t answer.. I hope to receive some help because your plugin is really good!
    Thanks in advance :)

  12. If you’re having a problem where the plugin says “message sent successfully” but you’re not receiving email, it’s most likely some issue with your hosting environment or your email setup.

    The best way to check would be to try another form mailer script (to test) and if that doesn’t work either, you’ll need to learn more about your hosting/email environment and find out what it’s not working.

    Also, try setting the recipient address to a Gmail account or something (if you’re using an email address that is the same as the domain your site is setup on. eg: your site is at example.com and your sending mail to user@example.com, try sending to youremail@gmail.com instead to see if that works).

  13. Thanks Greg! That completely solved my issue with CF7 refusing to send out emails on WP2.9.1 (and WP on the whole being a bit iffy sending mail) on some of the web hosts I use.

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 )

Twitter picture

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

Facebook photo

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

Google+ photo

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

Connecting to %s