JVM WooCommerce Wishlist

Omschrijving

A simple and lightweight wishlist for WooCommerce, with plenty of hooks for customization to fit your WooCommerce theme. Tested on WooCommerce 3.x but should work on any WooCommerce 4.x installation.

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 customisation 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 behaviour of the wishlist.

Example usage removing the button from the achive 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.
});

Schermafdrukken

Installatie

The plugin assumes you’re already using WooCommerce. Without WooCommerce this plugin won’t do much.

  1. Install the plugin from the Plugins or upload the plugin folder to the /wp-content/plugins/ directory menu and then activate it.
  2. Go to the plugin setting screen to define a wishlist page.
  3. Go to the plugin settings page from the plugins screen and create your wishlist page.

Beoordelingen

29 juni 2020
I appreciate all the free plugins out there, but many times they're bloated with unwanted options. Having tried many other WordPress wishlist plugins, this is exactly what I was looking for. Thank you!
25 juni 2020
After having tried several of the more popular Wishlist plugins, I found that they were all difficult to work with/customize, ran slow, and came with a lot of features I didn't need - while some simple features I did want would come in a premium package. This plugin however, is fast and allows for customization. If you're not shy to change up the code and style a little, you can easily get to the result you want, without the plugin breaking or acting weird. Support was also quick to get back to me and provided all I needed. Thank you for an amazingly smooth plugin and keep up the good work!
4 juni 2020
I had a request/suggestion and the developer responded immediately, released an update too. Works pretty good 🙂
10 mei 2020
This plugin is nice and very easy to customize; I was actually gonna settle my site with it, but I've discovered that it doesn't let you log in users using the same device and the same browser, otherwise it copies the items from a user's wishlist to another's; it even replaces them. It's gonna be a huge problem for my users who share devices and browsers. It's the only negative thing about this plugin, but a big reason it didn't get a 5-star from me. I hope you can fix the issue with the cookies. I thought there was no possible way around this, but there is, I found it from another plugin.
2 augustus 2019
Simple, easy to extend, wishlist plugin. I was fed up with the bloat of Yith and others--this does require some coding knowledge to get the exact functionality similar to other plugins, but once you do that it's so simple, clean, and just better!
Lees alle 7 beoordelingen

Bijdragers & ontwikkelaars

“JVM WooCommerce Wishlist” is open source software. De volgende personen hebben bijgedragen aan deze plugin.

Bijdragers

“JVM WooCommerce Wishlist” is vertaald in 1 taal. Dank voor de vertalers voor hun bijdragen.

Vertaal “JVM WooCommerce Wishlist” naar jouw taal.

Interesse in ontwikkeling?

Bekijk de code, haal de SVN repository op, of abonneer je op het ontwikkellog via RSS.

Changelog

1.3.4

Added a new filter for modifying the icon HTML: jvm_add_to_wishlist_icon_html

1.3.3

Bug fix php error notice in ajax/www-ajax-functions.php

1.3.2

Added an optional $product _id parameter to the jvm_woocommerce_add_to_wishlist function for use of this function outside of the loop, for increased flexibility.

1.3.1

Bug fix. Whitespace in main plugin file. Please update.

1.3.0

Fixed a fatal error in update 1.2.9. Please upgrade if you are on 1.2.9.

1.2.9

Some slight changes to wishlist storage. The cookie is now always cleared on logout. Also newly added products when not logged in will be added after login.

1.2.8

Bug fix: When logged in last item on wishlist would need to be removed twice. Should be fixed now. Also no ajax requests will de done if a user is not logged in to reduce overhead.

1.2.7

Security fix. User ID passed to ajax calls must match the current user.

1.2.6

Another whitespace fix.

1.2.5

Fixed a whitespace issue in front end link.

1.2.4

Added a partially Japanese translation.

1.2.3

Added a grunt task for automated POT files.
Added and a Dutch translation and auto generated POT file.

1.2.2

Added a dontation button.

1.2.1

Added a Dutch translation.

1.2.0

Fixed a bug where the custom wishlist template would not load from the (child) theme.

1.1.0

Fixed a bug “No products on your wishlist yet.” shown with products in wishlist on other pages than the main wishlist page (plugin settings).

1.0.0

Initial release

Stable

1.0.0