Today I am happy to release the 1.2.0 update to the WP Job Manager Packages addon plugin, which includes a long awaited “give” packages feature, and some bug fixes. The give package feature now allows you to automatically give any visibility package, in two different situations. The first one is when a new user registers, and the second is when another WooCommerce product is purchased. Let’s go ahead and dig right into these new features.
Give Package on Registration
TLDR; – You can automatically give a user a visibility package when they register on your site, without them having to go through purchase process, and is completely transparent to the user. This can be configured to be given to any newly registered user, or you can specify only the custom roles for accounts that should be given the free package.
As of version 1.2.0 in WP Job Manager Packages, you can now create (or update existing packages), to be automatically given to newly registered users on your site. This new feature was added after much generated feedback from the community surrounding new features they would like.
This feature essentially allows you to configure any existing (or new) Visibility Package, to be automatically given, for free, to a new user when they register on your site. This completely eliminates having to have the end user go through the process of selecting a package, then checking out with the package, especially when it’s going to be a free package.
This also allows you to prevent the same user from purchasing the same free package multiple times, when you only want to give the package to them once, and then after that, they can go through the purchase process to purchase additional credits.
Give Package on Registration – User Roles
To prevent giving a free package to any user that registers on your site, you can specify the specific user roles that should only be given the package. If this is left blank, it will be given to any user roles. Multiple roles can be selected, but most of the time you will probably only select one role. As an example, if you have created a “trial” resume visibility package, chances are you only want to give that visibility package to someone who registers on your site as an Employer
Give Package on Product Purchase
TLDR; – You can automatically give a user a visibility package when they purchase ANY other WooCommerce product, without them having to go through purchase process, and is completely transparent to the user.
Another very popular feature request was the ability to integrate the Visibility Packages, with plugins like WooCommerce Paid Listings, or Astoundify Listing Payments … to eliminate requiring users to purchase a package to post listings, and one to view listings … or maybe you want to give them a free basic visibility package with the purchase of a post listing package.
After much work to try and integrate the visibility packages with those addons, in the end I decided to completely open it up, as to not tie the configuration to only those specific products … so instead, I added this feature, but for any WooCommerce product.
That’s right! You can now also configure Visibility Packages to be automatically given to any user who purchases another WooCommerce product. Multiple products can be selected, but there are a few things to take note of regarding this:
Multiple Products Purchased
When multiple products are selected, think of this as an AND … not an OR … so for instance:
If you setup a visibility package to be given when the “Starter” AND “Pro” WooCommerce products are purchased. If the user purchases either of those products, they will be automatically given the visibility package for free.
If they purchase both “Starter” and “Pro” products at the same time (in the same checkout), they will be given TWO visibility packages, one for each product purchased.
If you wanted to prevent this from happening, you could setup those products to only be purchased individually, but the user could just purchase the Starter package, complete checkout, and then purchase the Pro package and complete checkout, and that would result in being given 2 visibility packages.
Multiple Quantity of Products Purchased
By default, quantity of items purchased IS ignored … that means, if a user purchases a quantity of say, 5 Starter packages (in one checkout session), they will ONLY be given one visibility package. With that said though, if the user purchases 1 Starter package, and completes the checkout 5 times, they will be given 5 visibility packages, one for each checkout.
You can change this default functionality by adding this line of code to your child theme’s functions.php file, or using the Code Snippets plugin:
add_filter( 'job_manager_packages_wc_give_package_multiple_product_qty', '__return_true' );
Hiding Packages from Shop/Search
By default when you create new packages and publish them, they are visible in the cart or search on your site. If you do not want users to be able to purchase these from your site, or find them in search (which i strongly recommend if you’re using the give features), you should change the Catalog Visibility to HIDDEN and then update the product (see screenshot above). This will prevent this package/product from showing on any shop pages, in the search, etc. The give features mentioned above, specifically have integration handling for allowing packages to be hidden.
Other Updates and Fixes
This 1.2.0 release also includes numerous bug fixes, and enhancements as well:
- WorkScout Contact Details compatibility was added to fix issues with the custom template used by WorkScout
- Database queries were optimized and code was added to make sure they are only ran when absolutely necessary
- Fixed some PHP warnings about wpdb arguments
- Fixed an issue where the Add to Cart button was not showing for subscription packages on the shop pages
- And more, see full changelog here: https://plugins.smyl.es/docs/wp-job-manager-packages/changelog/