Reordering Cross-Sells and Up-Sells in WooCommerce

Reordering Cross-Sells and Up-Sells in WooCommerce

Cross-sells and Up-sells in WooCommerce are a very powerful tool to give suggestions to your customers. You might know that most people who buy product A will probably need product B as well, and you want the customer to know that. How do you do it? You use cross-sells and up-sells.

These products are shown respectively on the product page and on the cart page. They show like they would show on the Shop page in most cases. The only difference would be their order.

By default, cross-sells and up-sells are randomly sorted. But what if you want to change that? Maybe you want to show them by publish date, or by ID. As usual, there are filters for it!

That being said, let’s add the following code to the main file of a plugin or a theme’s function.php file (keeping in mind that it’s always best to create a child theme instead of altering a functions.php file):

<?php
// For Up-sells sorting
add_filter( 'woocommerce_upsells_orderby', function() { return 'date'; } );
add_filter( 'woocommerce_upsells_order', function() { return 'desc'; } );

// For Cross-sells sorting
add_filter( 'woocommerce_cross_sells_orderby', function() { return 'date'; } );
add_filter( 'woocommerce_cross_sells_order', function() { return 'desc'; } );
Was this article helpful?
YesNo

Leave a comment

Your email address will not be published. Required fields are marked *