Smart Wishlist & Product Waitlist for WooCommerce

Description

Most stores install two separate plugins to offer a wishlist and a back-in-stock waitlist. Smart Wishlist & Product Waitlist for WooCommerce does both in a single install — sharing one admin menu, one asset file, and one pair of database tables.

Activate it, and both features are live immediately. No wizard, no shortcodes required (unless you want a dedicated wishlist page), no settings you have to touch. A settings page under WPWing Settings is there when you want it – disable a feature, customise the restock notification email, change the sender / Reply-To address, or adjust how long guest wishlists are retained.

Requires WooCommerce 9.0 or higher.

Why merchants choose it over two separate plugins

  • One install instead of two – one admin menu, one small asset file, one pair of database tables. Fewer updates, fewer conflicts, less weight on every page load.
  • Free features others sell – guest wishlist, wishlist demand analytics, waitlist CSV export, and a variation-aware waitlist form are included in the free plugin, not locked behind a Pro tier.
  • No ads, no nags – no dashboard banners, no upsell popups, no greyed-out settings teasing an upgrade. Just the features.
  • Built for performance – dedicated database tables (no postmeta bloat) and background email sending via Action Scheduler, so a large restock blast never slows down your store or your admin.
  • Deliverability done right – every restock alert includes a genuine one-click unsubscribe (RFC 8058 List-Unsubscribe header), the standard Gmail and Yahoo now expect from senders.

WooCommerce Wishlist – let shoppers save products for later

Shoppers can save any product with a single click. The button appears on every product page and toggles between “Add to wishlist” and “Remove from wishlist” via AJAX – no page reload.

  • Works for logged-in customers and guests (cookie-based, no account required)
  • Guest items carry over automatically when the shopper creates an account or logs in – no duplicates, no lost saves
  • [wpwing_wishlist] shortcode renders the shopper’s saved products anywhere on your site, with an inline Remove button
  • Items are removed from the wishlist automatically once they’re added to the cart
  • Wishlist page shows a running total of every saved item’s price
  • Share the wishlist page via copy link, WhatsApp, X, Facebook, or email
  • Wishlist data stored in a dedicated database table – not post meta

Back in Stock Notifications – automated product waitlist

When a product or variation goes out of stock, an email capture form appears on the product page automatically. When stock is restored, subscribers receive a restock notification email and can return to buy – recovering sales you would otherwise lose to “out of stock”.

  • Variation-aware: the form shows and hides in real time as a shopper selects different options – only out-of-stock selections trigger the form
  • Unlimited subscribers and unlimited restock alerts – no monthly caps, no per-email pricing
  • Notifications dispatched via Action Scheduler (bundled with WooCommerce) so a large restock batch never slows down your admin
  • Every notification email includes a one-click unsubscribe link
  • Honeypot field blocks automated spam signups without captcha friction

Know what to restock and what to promote

  • WPWing Waitlist – paginated table of all signups, filterable by status, with one-click CSV export for your email marketing tools
  • WPWing Wishlist – top 50 most-saved products ranked by wishlist count, so you can spot demand before it shows in sales

For Developers

Every meaningful step fires an action or filter hook so you can customise behaviour without modifying plugin files:

wpwing_wl_restock_email_message (filter the notification email body), `wpwing_wl_restock_queue_entries` (filter who gets notified), `wpwing_wl_before_send_restock_email`, `wpwing_wl_after_send_restock_email`, `wpwing_wl_before_process_restock_queue`, `wpwing_wl_after_process_restock_queue`, `wpwing_wl_product_stock_changed`, `wpwing_wl_wishlist_item_added`, `wpwing_wl_wishlist_item_removed`.

Screenshots

Installation

  1. Go to Plugins Add New Upload Plugin, upload the ZIP, and click Activate.
  2. Both the wishlist toggle button and the waitlist form are now live on your product pages – no configuration needed.
  3. Optional: create a page, add the [wpwing_wishlist] shortcode, and publish it to give shoppers a dedicated “My Wishlist” page.

FAQ

Can this replace my separate wishlist plugin and back in stock plugin?

Yes – that is exactly what it is for. It ships both a full guest-friendly wishlist and an automated back-in-stock waitlist, so you can run one plugin instead of two, with one settings page and one set of database tables.

Are the back in stock notifications really free?

Yes. Unlimited products, unlimited subscribers, unlimited restock emails. Emails are sent through your site’s normal WordPress mail setup, so there are no monthly caps or per-email fees.

Will it slow down my store?

No. The plugin loads one small script and stylesheet on the frontend, stores its data in two dedicated database tables instead of post meta, and sends restock emails in the background via Action Scheduler – so even restocking hundreds of products at once will not block a page load or your admin screen.

Does the plugin work with variable products?

Yes. The waitlist form is variation-aware – it appears and disappears in real time as a shopper selects different options, and only fires for variations that are actually out of stock. The wishlist button works for both simple and variable products.

Do shoppers need an account to use the wishlist or waitlist?

No. Guests can save products to a wishlist (stored in a cookie) and join waitlists using only an email address. If a guest later logs in or registers, their wishlist items merge into their account automatically.

Is there anything to configure after activation?

No. Both features work immediately after activation using WooCommerce’s own stock status and the email address from the waitlist form. A settings page is available under WPWing Settings for merchants who want to disable a feature, customise the restock notification email, change the sender / Reply-To address, or adjust how long guest wishlists are retained.

How does the restock email get sent?

When WooCommerce records a stock change that brings a product back into stock, the plugin schedules a job via Action Scheduler (bundled with WooCommerce – no separate install needed). Action Scheduler runs the job in the background, so restocking 200 products at once does not slow down your admin screen.

Can I customise the notification email?

Yes. Use the wpwing_wl_restock_email_message filter to replace the default plain-text message with HTML, a custom template, or a call to a transactional email service.

What happens to the data if I uninstall the plugin?

Deleting the plugin via Plugins Delete drops both custom database tables and removes all plugin options. Deactivating without deleting leaves all data in place.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“Smart Wishlist & Product Waitlist for WooCommerce” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

1.1.0 – 2026-09-22

  • New: waitlist bot protection with optional Google reCAPTCHA v3 and Cloudflare Turnstile support.
  • New: waitlist email logs admin screen under WPWing Email Logs to track delivery status, retries, and errors.
  • New: automated listing screenshot capture system with Playwright and sample data seeder.
  • Fix: client IP resolution now correctly respects Cloudflare and reverse proxy headers for rate limiting.
  • Fix: database schema activator check and unneeded return statements in AJAX handlers.

1.0.3 – 2026-09-08

  • New: items are automatically removed from the wishlist once added to the cart.
  • New: wishlist page shows a running total of every saved item’s price.
  • New: share the wishlist page via copy link, WhatsApp, X, Facebook, or email.

1.0.1 – 2026-08-31

  • New: guided setup wizard on first activation – enable features, pick a wishlist button style, and choose your wishlist/waitlist pages in three steps.
  • New: wishlist button style setting – default, filled, outline, or icon.
  • New: wishlist button position setting – render before or after Add to Cart, on both single product pages and shop/archive loop cards.
  • Fix: guest wishlist and waitlist items now merge into the account created during registration, not just at login.
  • Fix: the admin bulk-delete “Apply” button could silently do nothing when clicked from the top toolbar.
  • Fix: the Settings page now shows a confirmation message after saving.
  • Tested up to WordPress 7.1 and WooCommerce 11.0.1.

1.0.0 – 2026-08-24

  • Initial release – full wishlist and back-in-stock waitlist system for WooCommerce.