Extra Product Sorting Options for WooCommerce

Description

Extra Product Sorting Options for WooCommerce provides options that extend the default WooCommerce orderby options on the shop page. You can optionally set a new name for the default sorting (helpful if you’ve used this to create a custom sorting order), and can enable up to 5 new sorting options: alphabetical, reverse alphabetical, on sale, review count, and availability product sorting. You can also remove core sorting options, or remove the sorting dropdown completely.

Requires: PHP 7.4, WooCommerce 3.9+ and WordPress 5.6+

Features

Includes options to:

  • rename default product sorting (i.e., change to “Our Sorting”)
  • enable alphabetical product sorting
  • enable reverse alphabetical sorting
  • enable on sale sorting (note: works only for simple products)
  • enable sorting by inventory / availability
  • enable sorting by review count (most reviews to least)
  • remove core sorting options

Rename Default Sorting

You can customize your product sorting order on your shop pages – here’s a handy tutorial to do so. However, many shop admins like to then rename this from “Default Sorting” to something more descriptive, such as “Our Sorting” or “Our Selection”. You can optionally enter a new name for this sorting order if desired.

Adding Sorting Options

When you create a customized sorting order, you lose the ability to sort products alphabetically. This plugin gives you the ability to add new sorting options to list products by title A to Z or in reverse order (Z to A).

Want to show items with the highest stock first? You can enable sorting by availability, which will enable sorting from high stock to low stock (See FAQ for more details). You can also sort by the number of product reviews.

You can add the option to sort items by sale status – there’s a sorting option to show “On Sale” items first in the shop catalog. Please note that only simple products can be sorted by sale status, and variable products will display mixed with non-sale products.

Remove Sorting Options

You can remove the core sorting options as well! If all sorting options have been removed, the sorting dropdown will become hidden on shop pages.

Translations

The plugin text domain is: woocommerce-extra-product-sorting-options

More Details

Screenshots

  • Plugin Settings in the WooCommerce customizer panel
  • Some new sorting options on the shop page
  • Change sorting label (in shop dropdown) with the Say What plugin

Installation

  1. Be sure you’re running WooCommerce 3.5+ and WordPress 4.4+ in your shop.
  2. Upload the entire woocommerce-extra-product-sorting-options folder to the /wp-content/plugins/ directory, or upload the .zip file with the plugin under Plugins > Add New > Upload
  3. Activate the plugin through the Plugins menu in WordPress
  4. Go to WooCommerce > Settings > Products > Display. The new settings are added after “Default Product Sorting”. If you enable more sorting options, you can set these as new defaults as well.
  5. View documentation on the product page for more help if needed.

FAQ

Do I need to rename the default sorting?

Nope. You can use this plugin to simply add new sorting options to your shop pages. Any of the settings are entirely optional.

How do I set my new sorting option as the default?

When you check to enable these options, save your Product settings. You’ll now be able to select your new options as a default under the “Default Product Sorting” list.

Can I change the sorting label in the shop dropdown?

Yep! You can use the Say What plugin to change the text – for example, you could change the label that says “Sort by name: A to Z” to “Sort alphabetically”. See the screenshots for an example.

The text domain to use is woocommerce-extra-product-sorting-options.

Why doesn’t sorting by availability work?

Don’t worry, it does 🙂 It’s possible to sort by stock, but this will work for parent products rather than using the stock available at the variation level. You can set this under Product Data > Inventory by enabling “Manage stock”. Set the available stock for all variations, and this will be used to sort the item. You can still manage stock at the variation level.

If you don’t manage your stock, you should disable this option – it will simply work as an alphabetical sort if all products are just “In Stock” without inventory managed.

Why can’t on-sale sorting work for variable products?

Simple products and variable products use two different “keys” to indicate if they’re on sale. As a result, we can’t order products using two different meta keys, so we’ve used the key that indicates a simple product’s sale price in this plugin.

We don’t anticipate changing this in the foreseeable future, as we’ve spent a couple hours trying to get the custom search query to work, but WooCommerce core adds search parameters that conflict with it, and we haven’t found a suitable work-around.

This is handy! Can I contribute?

Yes you can! Join in on our GitHub repository and submit a pull request 🙂

Reviews

November 22, 2023 1 reply
I've been able to use this plugin on themes other than Blocksy. It's unfortunate since the Blocksy Free Theme is one of the best to use for Woocommerce.
May 17, 2023 3 replies
Hi guys, Why is the "Sale" sorting limited to ONLY simple products? This is bad design — basically customers missing on all on-sale items that are variations. We'll have to remove your plugin solely due to this problem. This said, any plans including variations? And when?
October 13, 2021
This plugin in super light, easy to use, straight forward, and it actually works! (unlike so many others) Thank you, Dev, for putting this together! It took me longer to write this little review then to set up and utilize the plugin.
August 31, 2021
I've just installed and the plugin does exactly what is needed without having to customize the PHP. Thank you for creating and supporting this plugin!
August 25, 2021 13 replies
Hi, Please let me kn when we can use this in wordpress 5.8 Right now it not working for me ( variable products not showing in their catagories) Issues also with search. kind rgds, T
Read all 27 reviews

Contributors & Developers

“Extra Product Sorting Options for WooCommerce” is open source software. The following people have contributed to this plugin.

Contributors

“Extra Product Sorting Options for WooCommerce” has been translated into 5 locales. Thank you to the translators for their contributions.

Translate “Extra Product Sorting Options for WooCommerce” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

2023.07.28 – version 2.10.0

  • Misc – Add compatibility for WooCommerce High Performance Order Storage (HPOS)
  • Misc – Require PHP 7.4+, WordPress 5.6+ and WooCommerce 3.9+

2022.07.31 – version 2.9.1

  • Misc – Rename to Extra Product Sorting Options for WooCommerce

2021.04.27 – version 2.9.0

  • Feature – Allow users to remove core sorting options
  • Misc – Require WordPress 4.4+
  • Misc – Require WooCommerce 3.5+
  • Misc – Require PHP 5.6+

2020.05.04 – version 2.8.4

  • Misc – Add support for WooCommerce 4.1

2020.03.10 – version 2.8.3

  • Misc – Add support for WooCommerce 4.0

2020.02.05 – version 2.8.2

  • Misc – Add support for WooCommerce 3.9

2019.10.24 – version 2.8.1

  • Misc – Add support for WooCommerce 3.8

= 2019.08.15 – version 2.8.0
* Misc: Add support for WooCommerce 3.7
* Misc: Remove support for WooCommerce 2.6

= 2019.06.12 – version 2.7.4
* Misc: Declare support for WooCommerce 3.6

2018.10.30 – version 2.7.3

  • Fix: Respect product shortcode ordering on product pages
  • Misc: Add support for WooCommerce 3.5

2018.08.10 – version 2.7.2

  • Localization – Bundled French translation, thanks Jérôme Wymann!

2018.02.13 – version 2.7.1

  • Fix: PHP warnings for themes that don’t support WooCommerce product column and row settings

2018.02.08 – version 2.7.0

  • Tweak: Move settings to customizer panel in WooCommerce 3.3+
  • Fix: Ensure default sorting can be renamed if translated
  • Misc: Add support for WooCommerce 3.3
  • Misc: Require WooCommerce 2.6.14 and WordPress 4.4

2017.08.22 – version 2.6.1

  • Fix: PHP warning when WooCommerce is outdated

2017.03.23 – version 2.6.0

  • Feature: Sort products by review count
  • Misc: Removes ‘featured first’ sorting in shops running WooCommerce 3.0+ since featured meta is no longer available for products (see notes for further details)
  • Misc: Added support for WooCommerce 3.0
  • Misc: Removed support for WooCommerce 2.3.x

2016.07.28 – version 2.5.0

  • Misc: removed ‘randomized’ sorting due to issues with larger catalogs (see notes for further details)

2016.05.31 – version 2.4.0

  • Misc: added support for WooCommerce 2.6
  • Misc: removed support for WooCommerce 2.2

2016.01.18 – version 2.3.0

  • Misc: updated textdomain to woocommerce-extra-product-sorting-optionsplease update translations!
  • Misc: WooCommerce 2.5 compatibility

2015.09.07 – version 2.2.3

  • Fix: properly use orderby attributes when passed in via shortcode

2015.08.17 – version 2.2.2

  • Misc: introduced wc_extra_sorting_options_fallback_order filter
  • Misc: pass in $orderby_value to wc_extra_sorting_options_fallback and wc_extra_sorting_options_fallback_order filters to let you change them for particular orderby

2015.07.27 – version 2.2.1

  • Misc: WooCommerce 2.4 compatibility

2015.07.13 – version 2.2.0

  • Feature: added title fallback to use as secondary sorting parameter
  • Misc: introduced wc_extra_sorting_options_fallback filter
  • Misc: dropped WooCommerce 2.1 support since 2.2 added orderby = rand support

2015.02.06 – version 2.1.1

  • Fix: bug with loading translations

2015.02.03 – version 2.1.0

  • Misc: WooCommerce 2.3 compatibility

2015.01.09 – version 2.0.1

  • Fix: Squished a bug affecting random sorting

2015.01.05 – version 2.0.0

  • Misc: Refactored to simplify code and add upgrade routine
  • Feature: Added “Featured” sorting
  • Feature: Added “Availability” sorting
  • Tweak: Changed settings to multi-select instead of checkbox group
  • Tweak: Text domain is now wc-extra-sorting-options instead of woocommerce-extra-product-sorting-options

2014.07.30 – version 1.2.0

  • Feature: Added “On Sale” sorting (thanks Bryce Adams for the idea)

2014.07.29 – version 1.1.0

  • Feature: Added reverse alphabetical sorting option

2014.07.28 – version 1.0.0

  • Initial Release