The Give plugin from WordImpress is an excellent plugin for accepting donations on a website. In fact, from what I understand, it was created in part as an answer to the complicated mess that comes from trying to manage account donations via WooCommerce. Since WooCommerce is an estore plugin, it doesn’t do donations very well. But what if you want both? Our client, LeadingLDS is a non-profit organization that needed to accept donations and sell its products on its website.
While I’d love to see some kind of “bridge” plugin that will allow people to add a Give-based donation (or set up a recurring donation) to their WooCommerce shopping cart, there isn’t anything like that currently that I could find. So without that tighter integration, we wanted to see if we could make the two play more nicely than either one’s default setup allows.
The main problem we saw is that someone who both donates (via Give) and purchases from the estore (via WooCommerce) shouldn’t have to have two separate places to go to manage their account info, see purchases, view donations, manage recurring donations, etc. This lack of integration can create a disjointed user experience and unnecessary frustration for donors and customers alike. Consolidating these processes would simplify management for administrators and enhance the overall usability of the site. Finding creative solutions for merging these functionalities became a critical focus for this project.
Â
If you’re a visual learner, watch the video of how to do this next. Otherwise, skip down and continue reading after the video.
Combining Give Account Pages
The first thing I did was combine Give’s donation history and recurring donations pages if you’re using the Recurring Donations premium add-on. If you’re not, skip to the next section. This is easy. Just put both shortcodes in the same page:
[give_subscriptions] [donation_history]
Then I went to Donations>Settings>General and set “Donation History Page” to the page I put both shortcodes in. Next, I did the same thing on Donations>Settings>Recurring Donations under “Subscriptions Page”. Finally, I deleted the extra page.
Adding WooCommerce My Account Page
But then I was looking at the WooCommerce “My Account” page, and thought “why not have all this in one place? So I took the 2 shortcodes above and added them to the “My Account” page like this:
[[woocommerce_my_account]] [give_subscriptions] [donation_history]
Now I just repeated the steps at the end of the previous section, but changed those 2 settings in Give, to point to the “My Account” page. Boom! One page to rule them all! Now donors and customers could go to a single page to manage their WooCommerce info, as well as their Give donations and subscriptions.
Making it Nicer With Divi
Of course, I couldn’t stop there. Since we used the Divi theme on this site, I had to make it even better. So I used the Divi builder to lay out the page like this:
And viola! A great-looking, everything in 1 place account page:
The Catch
There’s always a catch, right? The catch here is that WordImpress hadn’t considered that people might put both the recurring donations and donations history shortcodes in the same place. It seems like a really obvious approach to me, and maybe they had considered it, just haven’t bothered to make them play nice.
So there’s one little problem with doing this: if someone visits the My Account page while they’re not logged in, they’ll be presented with 2 email forms to retrieve their donations info via email (without an account). It could be confusing to your donors. I’ve contacted Give support about this and they said they’ll look at updating this in the next version of the plugin, so that it detects when there’s 2 on a page, and only loads 1. Here’s hoping that fix comes soon.
A quick easy kludge for the multiple login prompt problem is the Hide This plugin: https://wordpress.org/plugins/hide-this/
Hide/Display can be configured by logged-in status.
Thank you! We needed a way to have all of the donation features of Give and the ability to sell fundraising merchandise with all of the features of WooCommerce. Thanks for the analysis and examples. Very helpful!