Welcome to the 4.0.8 release of Seamless Donations. This release is pretty special because I’ve had the opportunity to partner with Mihai, creator of GoodBye Captcha. The experience turned out to be awesome.

Let me give you some context. Seamless Donations displays a donation form, where people who want to contribute to a cause can type in their information. Unfortunately, there are some nasty people out there who try to use any method they can to spam or break into sites. There are words for these people, but this is a family show, so I’ll simply call them criminals.

Over the past little while, Seamless Donations users have started to experience this kind of nasty spam. They contacted me and also reached out to Mihai, who has a particularly elegant solution to the spam problem. Together, we worked on adding code to make GoodBye Captcha work seamlessly with Seamless Donations. At Mihai’s suggestion, I added a few tweaks and a hook right at the form submit stage, and he added a dashboard tab that connects GoodBye Captcha to Seamless Donations:


Waxing raphsodic about form protection

Before I continue, I should explain what makes GoodBye Captcha so interesting. Unlike many captcha solutions, GoodBye Captcha doesn’t use a captcha code. That’s why the “goodbye” in GoodBye Captcha. Your donors will never have to type in some hard to read, hard-to-type code. Since we want to reduce every bit of friction possible in the donating experience, not making them jump through an extra hoop may well increase your donation income. It’s that valuable.

Instead of relying on the human ability to discern a tough-to-read pattern and type it in, Mihai has built in some very slick algorithmic magic that protects your form without ever reaching out to an outside service. That makes it fast and secure. If you want to know more, here’s a great write-up by Freddy Muriuki.

Best of all, GoodBye Captcha is free. Just point your browser to GoodBye Captcha on WordPress.org, download it, and enable it (making sure you’re running Seamless Donations 4.0.8 or better).

Before I move on to discussing some minor tech changes in this release, I want to thank Mihai. He’s been great to work with and even went above and beyond and helped me find and kill off a few potential bugs in Seamless Donations. It’s been a real pleasure.

Seamless Donations is back on GitHub

Back when I adopted Seamless Donations from Allen in March, the plugin was up on GitHub. But because I made so many changes before I released the new 4.0 release, I didn’t use Allen’s original repository. In fact, I didn’t post to GitHub at all.

Fast forward to September. A Seamless Donations user named Aaron reached out to me and asked if he could issue some pull requests for some interesting changes he had in mind. That was the impetus I needed, and Seamless Donations is now back on GitHub, Aaron issued his first pull request, and we have an interesting new hook and form item to show for it. Thank’s Aaron!

Contributions to the project are welcomed, appreciated, and encouraged. Feel free to issue a pull request (coder-speak for adding code) from the Seamless Donations Repository.

Update notes for 4.0.8

The following additional changes were made in 4.0.8:

  • Added a filter seamless_donations_challenge_response_request which fires after the submit form is submitted. If filter is used, and it fails, an “Invalid response to challenge. Are you human?” is displayed.
  • Added a filter seamless_donations_form_section_order after the form sections are built in seamless-donations-form.php.
  • Also added a new form data type — ‘placeholder’ — which, well, I’m not entirely sure what it will do. But Aaron asked for it, and it does give the form an extra type that currently inserts a “placeholder=” into the form element. This might not be fully compatible with HTML standards, but it’s certainly something that, say, jQuery could use to do some magic with.
  • Fixed bug introduced in 4.0 where notification email messages would only go out to one recipient. Now you can use a list of comma-separated email addresses in the notification email field of the Settings tab.

So there you go. Seamless Donations 4.0.8, now with a new and improved magical captcha that isn’t a captcha.