JVM WooCommerce Wishlist

plugin banner

A simple and lightweight wishlist for WooCommerce, with plenty of hooks for customization to fit your WooCommerce theme.

Author:WPInteractive (profile at wordpress.org)
WordPress version required:5.0
WordPress version tested:6.1.1
Plugin version:1.3.6
Added to WordPress repository:12-10-2017
Last updated:26-11-2022
Rating, %:82
Rated by:9
Plugin URI:
Total downloads:7 780
Active installs:1 000+
plugin download
Click to start download

A simple and lightweight wishlist for WooCommerce, with plenty of hooks for customization to fit your WooCommerce theme.

By default, the plugin adds a wishlist icon to the WooCommerce archive pages and the WooCommerce single product page. Instead of an icon you can also switch to a text-based link to or add/remove wishlist items.
The wishlist can be added to a page using the [jvm_woocommerce_add_to_wishlist] shortcode. For more advanced customization see the hooks, javascript API and templates sections below.

Hooks

For advanced users and developers, a few WordPress actions and filters are supplied to modify the behavior of the wishlist.

Example usage removing the button from the archive page:

remove_action( 'woocommerce_after_shop_loop_item', 'jvm_woocommerce_add_to_wishlist', 15 );

Example usage switching to text links instead of icons:

add_filter( 'jvm_add_to_wishlist_class', function($class) {
    return 'jvm_add_to_wishlist text';
});

Actions

Available actions:

  • jvm_woocommerce_wishlist_loaded
  • jvm_woocommerce_wishlist_before_wishlist
  • jvm_woocommerce_wishlist_after_wishlist
  • jvm_woocommerce_wishlist_before_wishlist_contents
  • jvm_woocommerce_wishlist_after_wishlist_contents
  • jvm_woocommerce_wishlist_before_add_to_wishlist
  • jvm_woocommerce_wishlist_after_add_to_wishlist

Filters

  • jvm_add_to_wishlist_class
  • jvm_add_to_wishlist_icon_html
  • jvm_woocommerce_wishlist_product_ids

Functions

  • jvm_woocommerce_wishlist_get_count()
  • jvm_woocommerce_wishlist_get_wishlist_product_ids()

Templates

The default wishlist page can be overridden in your theme. From the plugin directory copy

templates/wishlist.php 

to:

your-theme-directory/jvm-woocommerce-wishlist/wishlist.php 

Modify what you need in the copy.

Javascript API

For further theme integration the javascript file in the plugin has a few custom events that are fired for wishlist user activity.

  • add.JVMWooCommerceWishlist
  • remove.JVMWooCommerceWishlist
  • beforeupdate.JVMWooCommerceWishlist
  • afterupdate.JVMWooCommerceWishlist

Example usage:

$(document).on("beforeupdate.JVMWooCommerceWishlist", function(e) {
  console.log(e);

  // Do something like update some custom counter, show a message or whatever.
});

Screenshots
ChangeLog