Tag Archives: Actions

LearnDash and WordPress Groups

Add User to LearnDash Group When Orders a WooCommerce Product

LearnDash and WordPress Groups

I love the LearnDash LMS for WordPress.  I use it over at javascriptforwp.com and not only is it powerful out of the box and with plugins, but it’s hooks allow for even more.

One thing LearnDash cannot do out of the box is sell access to Groups via WooCommerce.

A Group in LearnDash, amongst other things, let’s you assign a group of courses to a group of users.  You can add courses over time and those users will automatically get access.

For my JavaScript for WordPress Master Course I wanted to switch from one gigantic course (hundreds of lessons) to a bunch of smaller courses that I could also sell individually.

To do this I setup a new Group in LearnDash called “Master Course” and added my new smaller courses to it.  I also created a new WooCommerce Virtual Product called “Master Course.”

Then I simply added this code to my functions.php:

Here is what this code does:

  • Hook into WooCommerce when an order is marked complete
  • Checks to see if that order includes my Master Course WooCommerce product
  • If so, it adds that user who purchased the product to my LearnDash group

It’s pretty simple and shows the power of hooks in WordPress.

To customize this for your own use you would have to add the Group and Product IDs to the corresponding variables on line 5 and 7.

One thing this doesn’t do is remove a person from a group if they cancel or are refunded the order, since this is something I wanted to do manually.  However, you could easily do this by hooking into the woocommerce_order_status_cancelled or woocommerce_order_status_refunded hooks.

A big thanks to Justin from LearnDash and Ernest from UncannyOwl, who is working on a plugin that will also allow for this functionality.

Speaking Announcement – WordCamp Philly 2015

WordCamp Philly Banner

I have taken off a number of months in 2015 from speaking at WordCamps, but I’m excited to announce that I’ll be speaking at WordCamp Philly (June 13-14).

My talk will be about WordPress hooks, actions and filters.  This is something I tried to talk on last year, but have learned a lot more in how to present this content since then and am excited for a much smoother and comprehensive talk with a sexy slide deck to boot 🙂

The Difference Between WordPress Filters and Actions

Thanks to Otto for making the difference between actions and filters clear:

Filters filter things. Actions do not. And this is critically important when you’re writing a filter. A filter function should never, ever, have unexpected side effects.

There, you go, pretty straightforward!  He actually makes some really good, concise points about the difference between these terms and as he says: please learn this lesson well.