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 5.6, WooCommerce 3.5+ and WordPress 4.4+
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.
The plugin text domain is:
- Be sure you’re running WooCommerce 3.5+ and WordPress 4.4+ in your shop.
- Upload the entire
woocommerce-extra-product-sorting-optionsfolder to the
/wp-content/plugins/directory, or upload the .zip file with the plugin under Plugins > Add New > Upload
- Activate the plugin through the Plugins menu in WordPress
- 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.
- View documentation on the product page for more help if needed.
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
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 🙂
توسعه دهندگان و همکاران
“Extra Product Sorting Options for WooCommerce” نرم افزار متن باز است. افراد زیر در این افزونه مشارکت کردهاند.مشارکت کنندگان
“Extra Product Sorting Options for WooCommerce” به 5 زبان ترجمه شده است. Thank you to the translators for their contributions.
علاقه مند به توسعه هستید؟
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-options– please update translations!
- Misc: WooCommerce 2.5 compatibility
2015.09.07 – version 2.2.3
- Fix: properly use
orderbyattributes when passed in via shortcode
2015.08.17 – version 2.2.2
- Misc: introduced
- Misc: pass in
wc_extra_sorting_options_fallback_orderfilters 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
- 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
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