How To Fix Contact Form 7 v5.01 - Reverting Back To reCaptcha v2

Posted on: Tuesday, 18 December 2018 00:36

As of the time of writing, v5.01 is broken. There are hundreds of 1-star reviews which have been piling up over the last few days.

It's not clear if the plugin itself is at fault or if the v3 of reCaptcha is just not filtering out the spam as effectively (maybe it's having to retrain its model for each new site, I'm not sure).

Either way, CF7 only supports v3 of the API at the moment.

I'm sure it will be fixed soon but in the meantime, you can solve it be using an extra plugin.

It's called Invisible reCaptcha for WordPress: https://wordpress.org/plugins/invisible-recaptcha/

Step By Step Guide


Go to Admin > Contact Form 7 >  Integrations and remove the API keys you have set up:


Then go to Plugins > Add Plugin and search for "Invisible reCaptcha for WordPress" by Mihai Chelaru.

Install it and activate it.

Open a new tab and go to your reCaptcha admin account: https://www.google.com/recaptcha/admin

Generate new keys with the setting reCAPTCHA v2 > Invisible



When you have filled out the form you will get some keys like you have used before:


Copy the Site Key into your clipboard.

Now go back to WordPress and go to Admin > Settings > Invisible reCaptcha

Paste the Site Key into the Site Key field, then go back and copy the Secret Key into the Secret Key.

Bonus: You can set the badge position - I prefer to make it the bottom left, or inline rather than its default right, that is often used up by a "back to top" element of the theme.


Click Save Changes.

IMPORTANT: There is one last step, it won't automatically work with Contact Form 7 forms.

Go to the Contact Forms tab, enabled it for Contact Form 7, and click Save Changes again on that tab:


OK your site is now safely protected again!

Hopefully, this will be fixed in the next few days.

PRO TIP: Don't forget to flush any cache plugins your site might be using.

I’ve turned 10

Posted on: Friday, 1 April 2016 13:28

Today marks the official day that I have been a professional web developer for 10 years!

That's a lot of buttons pushed, a lot of mice clicked and a lot of clients charmed. That's a lifetime in dog years. Its several lifetimes in internet years.

It got me thinking about how much has changed in the industry over these years. The industry moves forward so fast that I’m always caught up with what new technology I should be learning, not what technologies have faded away.

Skype won’t send any pictures I try to send

Posted on: Saturday, 10 October 2015 09:30

If you can’t get Skype to send pictures and keep seeing an error saying “this photo is unavailable” then hopefully this quick tip will get you back up and running with exchanging media.

Orchard CMS Quick Tip–No constructors found by AutofacUtil ConstructorFinderWrapper

Posted on: Wednesday, 7 October 2015 09:30

While writing an Orchard CMS driver class for a tutorial recently I found myself confronted with this error message. If this has happened to you then your gut instinct might be that you are going to have to learn something about Autofac and it might get complicated. Read on for a quick solution.

Orchard CMS Quick Tip–If you cast it they will come, or Accessing your field of dreams

Posted on: Tuesday, 6 October 2015 09:30

I see a lot of people coming up against issues trying to get at the fields they have added on their content types. If you can’t figure out how to access the data then read on to discover the important points you need to understand which will make accessing fields easy.

Orchard CMS Quick Tip–Zoned out, or Why changing Placement.info still doesn’t move your module

Posted on: Monday, 5 October 2015 09:30

This is a common problem that can catch out Orchard users and developers but after you learn this easy to remember tip you should be able to solve it quickly whenever you experience in the future.

Orchard CMS Quick Tip–No Persister for: SomePartRecord

Posted on: Friday, 2 October 2015 16:31

If you’re making a module with a record class and you start seeing errors saying that there is no persister for the part record class you’re working on then you have probably made this simple mistake.

Orchard CMS Quick Tip–A duplicate value cannot be inserted into a unique index

Posted on: Thursday, 1 October 2015 09:30

Work on an Orchard CMS widget had been going pretty well. It display OK and didn’t seem like it had any problems but each time I tried to save anything I’d get an exception thrown.

Orchard CMS Quick Tip–Curling up with Orchard, or brace line breaks without ReSharper

Posted on: Wednesday, 30 September 2015 09:30

Orchard CMS requires that all commits to the core use the JavaScript style curly brace positioning, where the opening brace is on the same line as the method signature. If you use ReSharper then it comes with an automatic .resharper file that applies this out-of-the-box but non-users can still get this functionality with plain vanilla Visual Studio.

Orchard CMS Quick Tip–Getting at the Orchard.Layouts JSON for your template defaults

Posted on: Tuesday, 29 September 2015 09:00

If you have started using the Orchard.Layouts module which has seen some pretty significant updates in the last few releases you might be wondering how you get at the JSON data that you’ve been finding in content part default layout data setting. There are two ways but both are a bit tricky.

UPDATE

It’s been pointed out to me by several people that this technique doesn’t work any more. I don’t know an alternative way to solve this, sorry.

What do I mean exactly?

When you have a LayoutPart attached to one of your content items you will see a section like this in its Content Definition page:

orchard-cms-getting-json-template

This data pre-populates the page when you create a new content item.

If you want to customise your own content types with LayoutParts that come with defaults its possible but their currently there isn’t anyway to access this through the admin panel directly. Instead you need to take one of the two courses listed below.

XML export

The first option is to export the data using the import/export module that comes with Orchard CMS. You can so it this way but then you will get the JSON data in xml encoded format so it will need extra processing.

Access the clipboard data

(Special thanks to Daniel Stolt, one of the core Orchard.Layouts developers, for this idea)

In Chrome you can select an element, hit Ctrl+C and then that JSON data is actually placed on the system clipboard, along with the plain-text of the element. It's how copy-paste works.

The trouble is that you probably don’t have an application installed that will paste clipboard data with the type “Chromium Web Custom MIME Data Format” so if you try to paste it back again all you will get is the plain text representation.

To get at this data you can use LINQPad to extract this hidden JSON data:

orchard-cms-getting-json-linqpad

Just follow these simple steps:

  1. Download LINQPad 4
  2. Paste this query into the query window:

    var s = (System.IO.MemoryStream)System.Windows.Forms.Clipboard.GetData("Chromium Web Custom MIME Data Format");
    System.Text.Encoding.Unicode.GetString(s.ToArray()).Dump();
    
  3. Set the Language to C# Statement(s) for multiline support. Note the (s) on the end.

  4. Query > Query Properties > Additional References > Add > Search Forms > Add System.Windows.Forms.dll reference > OK
  5. Run the query
  6. Bonus tip: File > Save to save the snippet for next time. You can load it back from the My Queries tab in the bottom corner.

Troubleshooting - NullReferenceException: Object reference not set to an instance of an object.

You copied something else into the clipboard while setting this up, copy the original back from Orchard.

Orchard CMS Quick Tip–Stop “Unable to launch the IIS Express Web server” SSL clashes

Posted on: Monday, 28 September 2015 11:27

When I’m working with Orchard I often want to have several copies of Visual Studio open, running several copies of Orchard for testing and comparison reasons. This is how I stopped the “Unable to launch the IIS Express" Web server” errors when I tried to launch two at the same time.

Orchard CMS Quick Tip–Orchard suddenly starts showing a 404 error for every page including the root

Posted on: Friday, 25 September 2015 11:18

As your working on your Orchard CMS website or maybe right after you have deployed it, you might suddenly find that nothing is working. If you’re getting a simple 404 page no matter what you try then this is the first thing you need to try.

SOLVED: Audio buzzing and crackling whenever the GPU is active or the mouse is moved

Posted on: Thursday, 24 September 2015 15:00

This problem seems to be somewhat common out there and mostly the solution is unique to your particular setup. Recently I was struck with a bad case of audio feedback from my computer whenever anything was happening on the screen. It was so bad I couldn’t even play computer games any more as the noise was too distracting. After trying a ton of different combinations I finally figured it out.

Orchard CMS Quick Tip–Always Start Without Debugging

Posted on: Wednesday, 16 September 2015 19:26

When you’re working on Orchard CMS in Visual Studio you will probably be tempted to press F5 as you normally do to start the solution in a web browser. Don’t do it!

SOLVED: Web Deploy fails with The "CollectFilesinFolder" task failed unexpectedly.

Posted on: Sunday, 30 August 2015 23:42

If you’re seeing this error when you’re trying to build a package with Web Deploy then you have some deeply nested folders in your project which is causing the problem. A common problem web developers of 2015 have to wrestle with is fighting the Node Package Manager on a Windows developer box. Read on to get this issue quickly solved so you can deploy your site.

SOLVED: Error CS0246 The type or namespace name 'Orchard' could not be found while upgrading Orchard CMS

Posted on: Friday, 21 August 2015 16:51

Orchard CMS is a great asp.net MVC based CMS which is really flexible but as it stands its upgrade process is a long and complex process far from the simplicity of WordPress and other competitors. After you have followed their many-step upgrade process you will need to bring any custom themes or modules back into your main solution. At this point I started getting hit with compile time errors. With a huge solution like Orchard it can be be daunting task to figure out the solution but after some digging around I figured out what was causing this particular issue.

Getting control of the WordPress Galleries

Posted on: Wednesday, 12 August 2015 14:25

For a few versions now WordPress has had a gallery shortcode feature that you can add in via the Add Media button. Getting it to play nice with your theme however can take a bit than is really needed. Here are a couple of tips I picked up when I had to customise it for a recent client project.

Make a mental note: Its time to update your chkdsk skills

Posted on: Tuesday, 11 August 2015 13:30

You might not need this right now but if you’re using a Windows 8 or newer computer then you should have this information tucked away for when that rainy day inevitably comes pouring down on your precious data. In this article I explain the updates to chkdsk and why you don’t need to chkdsk /f any more.

SOLVED: Fixing an “Unidentified Network” error with our TL-WA850RE Wireless Repeater

Posted on: Friday, 7 August 2015 16:00

We have a wireless repeater in our house which boosts the signal to a full five bars at even the farthest reaches of the house. It’s worked pretty well except needing to be rebooted here and there but recently it completely stopped working. If you’re connecting to your repeater but then getting “Unidentified Network” and no internet connectivity then read on to see how I solved this.

Starting a local instance of IIS Express with PHP support

Posted on: Thursday, 4 June 2015 00:50

If you're a developer that works in Microsoft Visual Studio you’re probably quite used to the handy local web server that appears when you summon it with an F5. There are many alternative ways to spin up a local web server. Recently I’ve used virtual machines, Node, even PHP comes with its own built in dev server. They all have their strengths but this article shows you how to keep it in the family with a quickly deployable instance of IIS Express that supports both .Net and PHP.