How to Add Wishlist Functionality to WooCommerce

How to Add Wishlist Functionality to WooCommerce
On this page
  1. Why a Wishlist Feature Helps Conversion
  2. Option 1: A Dedicated Wishlist Plugin
  3. Option 2: A Lightweight Custom Wishlist With User Meta
  4. Troubleshooting
  5. Frequently Asked Questions
  6. Conclusion

The fastest way to add wishlist functionality to WooCommerce is a dedicated wishlist plugin that lets shoppers save products to a list and return later to purchase — core WooCommerce has no wishlist feature built in. Look for one with a shareable, persistent wishlist rather than a session-only “favorites” widget.

Why a Wishlist Feature Helps Conversion

  • Most visitors won’t buy on their first visit; a wishlist gives them a reason to come back
  • Shareable wishlists work well for gift-giving occasions and referral-driven traffic
  • It’s a low-effort conversion-rate-optimization test with a real, measurable return

Option 1: A Dedicated Wishlist Plugin

Popular free and premium wishlist plugins add a heart or star icon to product cards and single product pages, store the list against a logged-in user (or a cookie for guests), and typically include a shareable wishlist URL and an “add all to cart” button.

Option 2: A Lightweight Custom Wishlist With User Meta

If you only need a simple, no-frills version, you can build a minimal wishlist using post meta on the customer’s account:

PHP
/** Save a product ID to the logged-in customer's simple wishlist */
add_action( 'wp_ajax_save_to_simple_wishlist', 'save_product_to_simple_wishlist' );

function save_product_to_simple_wishlist() {
    $user_id = get_current_user_id();
    $product_id = absint( $_POST['product_id'] );
    $wishlist = (array) get_user_meta( $user_id, '_simple_wishlist', true );

    if ( ! in_array( $product_id, $wishlist, true ) ) {
        $wishlist[] = $product_id;
        update_user_meta( $user_id, '_simple_wishlist', $wishlist );
    }

    wp_send_json_success( $wishlist );
}

Displaying the Saved Wishlist

PHP
function render_simple_wishlist_items() {
    $wishlist = (array) get_user_meta( get_current_user_id(), '_simple_wishlist', true );
    foreach ( $wishlist as $product_id ) {
        echo wc_get_product( $product_id )->get_name() . '<br>';
    }
}

Troubleshooting

Wishlist Empties When the Customer Logs Out

A custom user-meta wishlist only works for logged-in customers — for guest support, fall back to a cookie or local storage-based approach, which most dedicated plugins already handle.

Wishlist Icon Doesn’t Match the Theme

Most wishlist plugins ship generic markup that needs a small CSS override in your child theme’s stylesheet to match your brand’s icon style and colors.

Frequently Asked Questions

Do guests need an account to use a wishlist?

Not with most plugins — they typically store guest wishlists in a cookie and merge it into the account automatically once the guest registers or logs in.

Can customers share their wishlist with someone else?

Yes, most wishlist plugins generate a unique shareable URL, which is especially useful for gift registries and referral traffic.

Will a wishlist plugin slow down my store?

A well-coded one adds minimal overhead since it only loads its scripts on relevant pages — check reviews and recent update history before installing any wishlist plugin.

Conclusion

Adding wishlist functionality to WooCommerce is one of the easier conversion-rate experiments you can run — a plugin gets you a fully-featured, shareable wishlist in minutes, while the custom user-meta approach works if you only need something minimal for logged-in customers.

See also How to Display Wishlist Buttons on the WooCommerce Shop Page. Then read How to Add Elementor Widgets to a WooCommerce Store.

Prefer no code? All-in-One Utilities Woo Add-on adds over 50 WooCommerce features, so you can switch them on without code.

Leave a Reply

Schedule a call