WP 6.x & WooCommerce 9.x compatible
Woocommerce Products List PRO is a simple but powerful WordPress plugin to list all your Woocommerce products
Please read the plugin description. If your are not sure about any feature or another 3rd party plugin support, please ask before purchasing.
Features
- User friendly and self-explanatory administration panel.
- Displays all the needed data for your products according to your settings.
- Easy to add a list anywhere on your WordPress via shortcode.
- Easy to add a list anywhere on your WordPress via PHP function.
- Comes with a WordPress shortcode creator editor plugin.
- You can create unlimited product lists by filtering per product category, product tag, product publishing date etc.
- “Add Selected to Cart” with select all checkbox for mass / bulk adding products to cart
- Extensible / developer friendly. You can alter the plugin without hacking it, but via WordPress filters and actions.
- Make your products stand out with your custom sticker/icon. You can enable/disable or override it per product.
- Supports YITH WooCommerce Wishlist
- Supports YITH WooCommerce Quick View
- Supports WooCommerce Product Gift Wrap
- AJAX can be enabled / disabled from the settings page
- Sorting of table columns in the frontend by clicking at each column header
- List pagination
- On the fly categories and tags filters
- Attributes are supported
- Custom fields and meta are supported
- Supports WooCommerce Direct Checkout
- Responsive Layout / Mobile Ready
- Easily translatable via .po / .mo files.
Requirements
- WordPress 5+
- Woocommerce 4+
- PHP 7.0+
Usage
In order to use the Woocommerce Products List PRO plugin, please navigate from your WordPress administration panel to “Woocommerce ? Products List PRO“
Options
- Display Product Title: Select “yes” to display the product title column or “no” to hide it.
- Display SKU: Select “yes” to display the product SKU column or “no” to hide it.
- Display Thumbnail: Select “yes” to display the thumbnail column or “no” to hide it.
- Thumbnail Width in Pixels: You may define the with of the thumbnail in pixels in this field
- Display Categories: Select “yes” to display a column with the categories that are assigned to the product or “no” to hide it.
- Display Tags: Select “yes” to display a column with the tags that are assigned to the product or “no” to hide it.
- Display Stock: Select “yes” to display the stock condition column or “no” to hide it.
- Hide Zero Priced Products: Select “yes” to skip empty or zero priced products or “no” to include them on the list.
- Hide Out of Stock Products: Select “yes” to skip out of stock products or “no” to include them on the list.
- Treat zero quantity Products as Out of Stock: Select “yes” to skip products that do not have a quantity set or “no” to include them on the list.
- Display Price: Select “yes” to display the price column or “no” to hide it.
- Display Total: Select “yes” to display the total per row column or “no” to hide it.
- Display Quantity Field: Select “yes” to display the quantity input field of the products to be added to cart column or “no” to hide it.
- Display Quantity Controls: Select “yes” to display -/+ buttons for the quantity field or no to hide them.
- Default Quantity Value: Enter any number to set as default quantity, default is 1.
- Display Weight: Select “yes” to display the weight of the products or “no” to hide it.
- Display Dimensions: Select “yes” to display the dimensions of the products or “no” to hide it.
- Display Add To Cart: Select “yes” to display the add to cart button column or “no” to hide it.
- Display Global Add To Cart: Select “yes” to display the global add to cart button or “no” to hide it.
- Global Add To Cart Button Position: Here you can choose where to place the global add to cart button.
- Global Add To Cart Button Default Status: You may set it to checked or un-checked when the list loads.
- Display Wishlist: Select “yes” to display the wishlist icon column or “no” to hide it.
- Display Gift Wrap Option: Select “yes” to display the gift wrap checkbox column or “no” to hide it, if you have the gift wrap plugin.
- Display Image: Select “yes” to display an extra image/sticker/icon column or “no” to hide it.
- Add Image: Upload the extra image/sticker/icon by clicking on the Open Media Manager button. The image will obey the thumb width settings.
- Display Excerpt: Select “yes” to display a excerpt of the product.
- Excerpt max length in characters: Enter the max number of characters in order to limit it. Leave blank for WP default.
- Display Excerpt Inline: Select where you would like to place the description.
- Display Table Head: Select “yes” to display table head or no to hide it. Hiding it will also remove the frontend sorting functionality.
- Enable Sorting: Select “yes” to enable sorting by clicking the table header on the frontend
- Enable Ajax: Select “yes” to enable AJAX for the “add to cart” button
- Order Direction: Select “ascending” or “descending” to set the default order direction for the list.
- Order By: Select the desired value to set the default element to order the products list.
- Order Columns: You may order the columns by drag-n-dropping the list elements.
- You are ready to go! * Save Changes *
Shortcode
On your product page or anywhere were shortcodes are executed (eg. posts and pages), you may use the shortcode [wcplpro wcplid=”somerandomstringhere”] . If you just put the shortcode then it will read the default settings of the plugin that you have just set via the admin settings panel. The wcplid parameter should not be missing and it should be unique for each shortocde instance.
In order to customize the shortcode, it is strongly recommended to use the “WOO List” icon that is now available on the WP Editor.
However, you may also enter the shortcode manually by using any of the following attributes (respectively to the above options):
- keyword
- categories_exc
- categories_inc
- tag_exc
- tag_inc
- posts_inc
- posts_exc
- categories
- tags
- sku
- title
- thumb
- thumb_size
- stock
- hide_zero
- hide_outofstock
- zero_to_out
- price
- total
- offer
- image
- qty
- default_qty
- qty_control
- cart
- globalcart
- globalposition
- global_status
- wishlist
- gift
- ajax
- desc
- weight
- dimensions
- desc_inline
- head
- sorting
- order
- orderby
- order_direction
- date
- wcplid
- quickview
- pagination
- posts_per_page
- filter_cat
- filter_tag
- filters_position
On all attributes, setting it to “1” equals to “yes” and “0” equals to “no”, when yes or no apply as a possible options. Here is an example:
[wcplpro wcplid="put_sth_unique_here" keyword="woo ninja" thumb=1 thumb_size=150 stock=1 offer=0 qty=1 default_qty=4 ajax=0]
As you may notice we have not set the cart, wishlist etc. attributes, hence the shortcode will do as we have set via the plugin’s settings panel
Guide to some special shortocde attributes
keyword: This is a free text attribute. The shortcode will do a search for the term you entered.
categories_exc: Comma separated categories IDs that you want its products’ to be excluded form the list.
categories_inc: Comma separated categories IDs that you want products from these categories only to be excluded to the list.
tag_exc: Same as categories but for excluding product tags
tag_inc: Same as categories but for restricting to specific product tags only
posts_inc: Enter comma separated products IDs (no spaces), to only include those products in the list
posts_exc: Enter comma separated products IDs (no spaces), to exclude those products from the list
thumb_size: This will take a number only and will be used as pixels
image: It has to be a full URL to the image
globalposition: Available values are “bottom”, “top” and “both”
desc: This will display the excerpt or not. Again 0 and 1 are the available options
order_direction: Available values are “asc” for ascending and “desc” for descending
orderby: Available values are “date”, “title”, “_price”, “_sale_price”, “_regular_price”, “_sku”, “_weight”, “_length”, “_width”, “_stock”, “total_sales”, “_stock_status”, “_wc_average_rating”
date: You can use this to display products only from specific year, month or day, eg. 2016 will display only products that were added in 2016 and 2016/09 will display products added on September of 2016 etc.
quickview: This will take as options: no, simple, variable, all
pagination: This will take as options: no, before, after, both
posts_per_page: This should be a number
filter_cat: This will take as options: yes, no
filter_tag: This will take as options: yes, no
filters_position: This will take as options: no, before, after, both
For Developers
Many hooks are in place. Please search the code for a full list. Below are some of them with examples.
Filters
You can add alter the css class of the link to the full image for each variation with the filter “vartable_thumb_class_filter”, eg.
add_filter( 'wcplpro_thumb_class_filter', 'my_wcplpro_custom_img_class'); function my_wcplpro_custom_img_class($class) { $class = $class.' myclass anotherclass'; return ($class); }
The Woocommerce “single_add_to_cart_text” filter is in place. Please refer to Woocommerce documentation.
Actions
You may add your own css class for the table with “wcplpro_table_class”, eg.
add_action( 'wcplpro_table_class', 'my_wcplpro_table_class'); function my_wcplpro_table_class($class) { $class = ' table-hover table-striped '; return ($class); }
You can add text before and after the table with, “wcplpro_before_table” and “wcplpro_after_table”, eg.
add_action( 'wcplpro_before_table', 'my_wcplpro_before_table'); function my_wcplpro_before_table($text) { $text = 'This text '; $text .= 'will go before the table'; echo $text; }
add_action( 'wcplpro_after_table', 'my_wcplpro_after_table'); function my_wcplpro_after_table($text) { $text = 'This text '; $text .= 'will go after the table'; echo $text; }
Frequently Asked Questions
-
Is “this and that” plugin compatible?
Please ask before you buy.
-
How can I see all the available product meta and each key
You may use a plugin as Post Meta Inspector
-
Can I list all Woocommerce products filtered by category?
Yes, you can via “categories_inc” shortcode attribute.
-
Can I list all Woocommerce products filtered by tag?
Yes, you can via “tag_inc” shortcode attribute.
-
I have hundreds of products. Is there a pagiantion option?
Yes, it was added in version 1.0.4.
-
Can I put this anywhere in my site?
Yes, you can via the shortcode, if the field where you put it is able to execute shortcodes.
-
Can I exclude products from the list?
Yes, you can via the product edit screen. Please select “Yes” at the option “Remove this product from Woocomerce Products List” under the product’s general settings tab.
-
Are variable products supported?
Variable products will be listed, however the “add to cart” button will not be available for them. Instead there will be a “read more” button that will link to the product single page.
-
What about stock check and AJAX?
By enabling AJAX, this will disable the stock quantity check when adding to cart via the plugin.
-
Will it replace my product archive pages (WooCommerce Category listing)?
No, it will not.
Changelog
1.1.30 14 Aug 2024
- Feature: Add to cart button icon
- Feature: CSS modernization
1.1.29 13 Feb 2024
- Feature: Additional themes support
- Feature: WooCommerce Product Bundles plugin compatibility
- Feature: Upgraded to select2 v4
- Fix: Filters placeholder
1.1.28 02 Aug 2023
- Feature: WooCommerce Pre-Orders plugin compatibility
- Fix: Various PHP 8.x related fixes
1.1.27 22 Jul 2023
- Feature: Added WP 6.3 compatibility and features
- Fix: Fixed error on the woocommerce_add_to_cart_redirect filter
1.1.26 13 Feb 2023
- Feature: The option to enable/disable the plugin functionality of the -/+ quantity buttons if the theme or another plugin provides it.
- Feature: Better Betheme compatibility
1.1.25 01/05/2023
- Feature: Added the option to reset and/or remove all plugin settings
- Fix: Removed some PHP notices
1.1.24 11/24/2021
- Fix: Resolved conflict with Betheme theme
1.1.23 11/19/2021
- Fix: Resolved conflict with Kallyas theme
1.1.22 07/23/2021
- Feature: Added the option to link or not the categories
- Feature: Removed Select2 and utilized SelectWoo
- Fix: Removed phpsessions and implemented cookies solution
- Fix: Removed jQuery migration warnings
1.1.20 05/23/2019
- Fix: WooCommerce version 3.6 compatibility for the quantity input field
1.1.19 04/02/2019
- Feature: Added the option to set the ordering data type per column
- Feature: Added the option to order as number or plain text on the selected orderby value
1.1.18 02/14/2019
- Feature: Categories filter follows “categories_exc” and “categories_inc” shortcode rules
1.1.17 11/14/2018
- Fix: Added a check for the available stock of the max value on the quantity input field
1.1.16 08/03/2018
- Feature: Added the option to enable or disable the responsiveness of the table
- Fix: Minor CSS changes
1.1.15 01/26/2018
- Fix: Next / previous pagination
1.1.14 11/15/2017
- Feature: Add menu_order shorting option
- Feature: Added “woocommerce_product_add_to_cart_text” filter for the “add to cart” button text
- Feature: Added fancybox for image zooming
- Fix: CSS changes
1.1.13 09/08/2017
- Feature: More WP Filters added
- Fix: data sort value and type for a few columns
1.1.12 09/01/2017
- Feature: Added support for Search by SKU for Woocommerce
- Fix: Direct Checkout plugin compatibility updated
- Fix: Minor CSS changes
- Fix: Filters were hidden after a search that would not return any products
- Fix: Hiding the add to cart column was causing sorting to break
1.1.11 08/17/2017
- Feature: Added the option to not link the title to the product page
- Feature: Display global cart total amount
- Fix: Quantity was creating an extra empty columns when -/+ buttons were not present
1.1.10 07/31/2017
- Feature: Search field addition
- Feature: Speed optimization
1.1.9 06/24/2017
- Fix: Product categories were not displaying
1.1.8 06/20/2017
- Feature: Woocommerce min/max quantities plugin support
- Fix: Quantity initial selection
1.1.7 05/08/2017
- Fix: Added checks to resolve select2 conflict
1.1.6 05/04/2017
- Feature: Up/down arrows next to the sortable headers
- Fix: Woocommerce Memberships JS conflict
- Fix: Filters are going away when there were no results
1.1.5 04/11/2017
- Feature: Woocommerce ver 3.0 compatibility
- Fix: Display price range of variable products
- Feature: Include / exclude products by SKU
- Feature: Added image link, target options, to full image, product and product in new tab
1.1.4 01/30/2017
- Fix: Tag filter had a typo
- Fix: Filters displaying was not functioning correctly
1.1.3 01/11/2017
- Feature: Added option to sort by included posts
- Feature: Column titles can be set via the options
- Feature: Added the option to display excerpt or full content, including shortcodes and embeds
- Feature: Added support for WooCommerce Direct Checkout
1.1.2 12/01/2016
- Fix: Renamed select2 CSS class and added check that select2 is loaded
1.1.1 10/27/2016
- Fix: Table headers are now translatable
- Fix: Fixed Woocommerce conflict CSS for mobile labels
1.1.0 10/25/2016
- Feature: Added the option to name the new meta key columns
- Fix: YITH Quickview optimization
- Fix: Spanish translation file compilation fix
1.0.9 10/24/2016
- Fix: Fixed conflict of select2 with other select drop downs
- Fix: Filters not resetting with the reset button
- Fix: Some HTML validation fixes
1.0.8 10/18/2016
- Feature: Added support for array post meta data
- Fix: Fixed compatibility with PHP prior version 5.5
1.0.7 10/16/2016
- Feature: Added the option to display product attributes
- Feature: Custom meta can be set to be displayed in columns
- Feature: New tabbed settings page
- Fix: Pagination and filters were not working when the shortcode was used on the front page
1.0.6 10/13/2016
- Fix: Fixed custom order when pagination is active
1.0.5 10/06/2016
- Feature: Updated Italian and Spanish translations
- Fix: Added a missing check for YITH quickview plugin
1.0.4 10/05/2016
- Feature: Categories filters on the list
- Feature: Tags filters on the list
- Feature: Pagination
- Feature: Added YITH Quick View support
- Feature: Added support for YITH wishlist custom icon
- Fix: Out of stock conditions were not returning the right value under specific circumstances
- Fix: Allow zero priced products to be added to the cart
- Fix: Sorting via the plugin’s settings was ignored
- Fix: Default quantity would not allow 0 as value
- Fix: Some textdomain was wrong
1.0.3 09/21/2016
- Feature: Hugely improved “global add to cart” button execution time
- Feature: Shortcode can now include specific products only
- Feature: Shortcode can now exclude some products from the list
- Feature: Add the option to limit the excerpt characters
- Bug: Yith wishlist view link was not clickable
1.0.2 09/20/2016
- Feature: Added better (native) support for YITH wishlist
1.0.1 09/19/2016
- Feature: Better AJAX request handling
- Feature: Added more hooks
- Feature: Added CSS classes for some popular themes
- Feature: Added link to the cart at the sliding notification area
- Feature: Added the option to manually close the “added to cart” notification sliding panel
1.0.0 09/12/2016
- Initial release
Sources and Credits
Translations
Spanish by Angelo Lazzari (visit his website)
Italian by Angelo Lazzari (come on… visit his website. Angelo and his team are great!)
German by bettinabuschmeyer
This plugin uses the following libraries