Up-sell Trio for WooCommerce

Description

Minimalist and high-efficiency plugin under 1,000 lines of code packed with WooCommerce up-sell features: Frequently Bought Together, Out-of-stock Alternatives.

Feature: Frequently Bought Together and Product Recommendations

Generates recommended product relationships from purchase history by email address using the Action Scheduler.

Creates a short code and dynamically inserts a frequently bought together promotion offering customers a percentage discount on add-on products.

Uses real dynamically generated WooCommerce Coupons to aide with reporting and other compatibilities, thus coupons must be enabled in WooCommerce settings.

Feature: Out-of-stock Alternatives

Displays two up-sell products above the add-to-cart form on single product pages when out of stock. Converts traffic to otherwise dead end discontinued or temporarily unavailable product pages.

Screenshots

  • Frequently Bought Together feature on a single product page.
  • Frequently Bought Together dynamic coupon in the cart.
  • Out-of-stock up-sells displaying on a single product page.

FAQ

Where can I see examples?

How do I configure these features?

Decisions not options! There is no settings page!

Frequently Bought Together and Product Recommendations:

Activating this plugin will insert the Frequently Bought Together section into the single product page via the WooCommerce hook woocommerce_after_single_product_summary.

If you need to insert the Frequently Bought Together feature via shortcode, such as with a page builder like Elementor, please follow this format: [ccom_fbt cross_sells="no" heading="Frequently purchased together…" heading_tag="h2"].

Cross sells feature will give preference to any products linked as cross-sells in the product settings.

Recommendations data can also be used for your Related Products by adding the following into your Code Snippets or child theme functions.php file:

add_filter( 'woocommerce_related_products', function( $related_posts, $product_id ) {
    $product = wc_get_product( $product_id );
    $recommendations = (array) $product->get_meta( 'ccom_recommendations', true );
    return array_merge( $recommendations, $related_posts );
}, 10, 2 );

Out-of-stock Alternatives:

Up-sell products configured in the WooCommerce product edit screen will be shown on out-of-stock single product pages above the empty add-to-cart form.

How is this plugin funded?

This plugin is funded by clients of Coded Commerce, LLC funding feature requests for development. When I develop useful code under GPL licensing I share it on our site as Code Snippets and in some cases package great features like these into free plugins so everybody can benefit, including the originating client via bug fixes and others’ funded feature requests.

I also welcome donations via the “Donate to this plugin” button towards the bottom of the right sidebar on the WordPress.org plugin page.

How can I bring back the Order Bumps feature?

I removed this feature in September 2025 to make room for an upcoming feature in the My Account Orders area.

You can bring it back using the free Code Snippets plugin and installing my code snippet: https://codedcommerce.com/woo/cart-and-checkout-order-bump/

How can I set the discount amount?

Use the free Code Snippets plugin and this sample code:

// FBT Multiplier (-0.1 = 10% off)
add_filter( 'ccom_fbt_multiplier', function( $multiplier ) {
    return -0.1;
} );

// My Account Buy-Again Multiplier (-0.05 = 5% off)
add_filter( 'ccom_reorder_multiplier', function( $multiplier ) {
    return -0.05;
} );

How can I disable a feature?

Use the free Code Snippets plugin and this sample code:

// To Disable Out-Of-Stock Alternatives
add_filter( 'ccom_oos_enabled', '__return_false' );

// To Disable FBT
add_filter( 'ccom_fbt_enabled', '__return_false' );

// To Disable My Account Buy-Again
add_filter( 'ccom_reorder_enabled', '__return_false' );

// Conditional Example
add_filter( 'ccom_reorder_enabled', function( $enabled ) {
    return current_user_can( 'practitioner' ) ? false : $enabled;
} );

Where do I go for help with any issues?

To report bugs, please click the Support tab, search for any preexisting report, and add yourself to it by commenting or open a new issue.

To request new compatibilities or features, please consider hiring the developer of this plugin or another developer who can provide us with code enhancements for review.

Paid premium support is also available for those looking for one-on-one help with their specific WordPress installation. Visit our website in the link above and contact us from there.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“Up-sell Trio for WooCommerce” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

1.9.2 on 2025-09-25

  • Added: My Account Orders page buy-again discount, default 5% off.
  • Added: My Account Order (single) page buy-again discount.
  • Added: Filters ccom_oos_enabled, ccom_fbt_enabled and ccom_reorder_enabled for disablement by custom functions.
  • Added: Filters ccom_fbt_multiplier and ccom_reorder_multiplier for setting discounts by custom functions.

1.9.1 on 2025-09-17

  • Added: FBT report table displaying the product recommendations cache.
  • Updated: Refactored FBT submissions to use cart session negative fee discounts instead of coupon codes due to DB clutter concerns.

1.9.0 on 2025-09-17

  • Removed: The basic Order Bumps feature to make room for an upcoming My Account Order Again Discount feature.

1.8.2 on 2024-09-17

  • Fixed: Extra HTML paragraph tags within the FBT template.

1.8.1 on 2024-09-09

  • Fixed: HPOS incompatibility of Frequent Bought Together data populater.

1.8 on 2024-04-05

  • Added: Padding of random products for FBT when no calculated nor default recommendations exist.
  • Updated: Block HTML for FBT needed updates, especially mobile breaking of the offer row.
  • Fixed: Avoid showing (0) rating when no ratings exist.

1.7 on 2024-01-06

  • Added: Support for using product slugs within order bump titles.
  • Added: Support for multiple order bump display, sorted alphabatically.

1.6 on 2023-10-18

  • Added: Woo product ratings onto FBT offers.
  • Updated: FBT design is now powered by WordPress blocks and uses larger Woo Checkout Block checkboxes.
  • Fixed: FBT calculation problem when offer is a variation other than the default variation.

1.5 on 2023-07-28

  • Added: Tested and declared support for WooCommerce core HPOS / COT feature.

1.4 on 2023-07-19

  • Updated: FBT heading to include reference to the product in view for SEO.

1.3.3 on 2023-07-12

  • Fixed: FBT should not show catalog visibility hidden product recommendations.

1.3.2 on 2023-05-17

  • Fixed: Rare PHP error after upgrading to WP 6.2.1 when using FBT shortcode within a blockified single product block template.

1.3.1 on 2023-04-26

  • Fixed: removed stock status check for FBT parent for blocks compatibility.
  • Fixed: missing ARIA labels on FBT checkbox fields.

1.3 on 2023-03-20

  • Added: New attribute heading_tag for the FBT shortcode.
  • Updated tested-to for both WP and Woo cores.

1.2.1 on 2023-01-07

  • Fixed: PHP crash on order bump when Woo cart isn’t booted.

1.2 on 2022-11-25

  • Added WP option to enable cross-sells pre-padding on FBT in non short code cases.

1.1.1 on 2022-11-22

  • Fixed: Crash in out-of-stock up-sells feature when an up-sell linked product DNE.

1.1 on 2022-11-19

  • Added: Scheduled action for FBT expired coupon auto trash.
  • Fixed: Some missing gettext / translation wrappers.

1.0.1 on 2022-11-10

  • Fixed: error editing cart page containing shortcode for OB feature.
  • Fixed: FBT to only display unique products, no duplicates.
  • Fixed: order bump match variation product parent titles and return output for shortcode.

1.0 on 2022-11-09

  • Initial commit of plugin already running on two client sites and tested in a sandbox environment as well.