{"id":84130,"date":"2018-04-08T23:54:51","date_gmt":"2018-04-08T23:54:51","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/price-matrix-for-woocommerce\/"},"modified":"2026-10-22T14:38:04","modified_gmt":"2026-10-22T14:38:04","slug":"price-matrix-for-woocommerce","status":"publish","type":"plugin","link":"https:\/\/id.wordpress.org\/plugins\/price-matrix-for-woocommerce\/","author":15744905,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.3.1","stable_tag":"1.3.1","tested":"7.1.3","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"Price Matrix for Woocommerce Lite","header_author":"AzMarket","header_description":"An eCommerce toolkit that helps you sell anything. Beautifully.","assets_banners_color":"c1c6de","last_updated":"2026-10-22 14:38:04","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/azmarket.net\/item\/price-matrix-for-woocommerce","header_author_uri":"https:\/\/azmarket.net","rating":5,"author_block_rating":0,"active_installs":10,"downloads":2826,"num_ratings":1,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","faq","changelog"],"tags":{"1.2.0":{"tag":"1.2.0","author":"azmarket","date":"2019-03-26 12:19:12","revision":2057614},"1.2.1":{"tag":"1.2.1","author":"azmarket","date":"2020-07-31 14:41:38","revision":2349812},"1.2.2":{"tag":"1.2.2","author":"azmarket","date":"2022-04-07 03:27:12","revision":2706041},"1.2.3":{"tag":"1.2.3","author":"azmarket","date":"2026-10-21 14:36:43","revision":3758574},"1.3.0":{"tag":"1.3.0","author":"azmarket","date":"2026-10-22 14:18:50","revision":3760055},"1.3.1":{"tag":"1.3.1","author":"azmarket","date":"2026-10-22 14:38:04","revision":3760092}},"upgrade_notice":{"1.3.1":"<p>Security release: please update. Adds CSRF protection to add to cart requests and stricter input validation.<\/p>","1.3.0":"<p>New: sale price inputs, &quot;Best Value&quot; \/ &quot;Popular&quot; badges and bulk order. Saving prices no longer changes the stock status of variations.<\/p>"},"ratings":{"1":0,"2":0,"3":0,"4":0,"5":"1"},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3758583,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3758583,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-772x250.png":{"filename":"banner-772x250.png","revision":3758583,"resolution":"772x250","location":"assets","locale":"","width":2202,"height":714}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.2.0","1.2.1","1.2.2","1.2.3","1.3.0","1.3.1"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":2056233,"resolution":"1","location":"assets","locale":"","width":1186,"height":1073},"screenshot-2.png":{"filename":"screenshot-2.png","revision":2056233,"resolution":"2","location":"assets","locale":"","width":892,"height":808},"screenshot-3.png":{"filename":"screenshot-3.png","revision":2056233,"resolution":"3","location":"assets","locale":"","width":882,"height":533},"screenshot-4.png":{"filename":"screenshot-4.png","revision":2056233,"resolution":"4","location":"assets","locale":"","width":882,"height":384},"screenshot-5.png":{"filename":"screenshot-5.png","revision":2056233,"resolution":"5","location":"assets","locale":"","width":506,"height":352},"screenshot-6.png":{"filename":"screenshot-6.png","revision":2056233,"resolution":"6","location":"assets","locale":"","width":871,"height":420},"screenshot-7.png":{"filename":"screenshot-7.png","revision":3760052,"resolution":"7","location":"assets","locale":"","width":760,"height":616},"screenshot-8.png":{"filename":"screenshot-8.png","revision":3760052,"resolution":"8","location":"assets","locale":"","width":712,"height":715}},"screenshots":{"1":"This screen shot description corresponds to screenshot-1.(png|jpg|jpeg|gif).","2":"This is the second screen shot"}},"plugin_section":[],"plugin_tags":[155352,66476,155351,155350],"plugin_category":[],"plugin_contributors":[169474],"plugin_business_model":[],"class_list":["post-84130","plugin","type-plugin","status-publish","hentry","plugin_tags-azmarket","plugin_tags-price-matrix","plugin_tags-pricing-matrix","plugin_tags-woocommerce-price-matrix","plugin_contributors-azmarket","plugin_committers-azmarket"],"banners":{"banner":"https:\/\/ps.w.org\/price-matrix-for-woocommerce\/assets\/banner-772x250.png?rev=3758583","banner_2x":false,"banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/price-matrix-for-woocommerce\/assets\/icon-128x128.png?rev=3758583","icon_2x":"https:\/\/ps.w.org\/price-matrix-for-woocommerce\/assets\/icon-256x256.png?rev=3758583","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/price-matrix-for-woocommerce\/assets\/screenshot-1.png?rev=2056233","caption":"This screen shot description corresponds to screenshot-1.(png|jpg|jpeg|gif)."},{"src":"https:\/\/ps.w.org\/price-matrix-for-woocommerce\/assets\/screenshot-2.png?rev=2056233","caption":"This is the second screen shot"},{"src":"https:\/\/ps.w.org\/price-matrix-for-woocommerce\/assets\/screenshot-3.png?rev=2056233","caption":""},{"src":"https:\/\/ps.w.org\/price-matrix-for-woocommerce\/assets\/screenshot-4.png?rev=2056233","caption":""},{"src":"https:\/\/ps.w.org\/price-matrix-for-woocommerce\/assets\/screenshot-5.png?rev=2056233","caption":""},{"src":"https:\/\/ps.w.org\/price-matrix-for-woocommerce\/assets\/screenshot-6.png?rev=2056233","caption":""},{"src":"https:\/\/ps.w.org\/price-matrix-for-woocommerce\/assets\/screenshot-7.png?rev=3760052","caption":""},{"src":"https:\/\/ps.w.org\/price-matrix-for-woocommerce\/assets\/screenshot-8.png?rev=3760052","caption":""}],"raw_content":"<!--section=description-->\n<p>Price Matrix For WooCommerce helps to show the price of variable products become easier and more intuitive under price list.<\/p>\n\n<p>\ud83d\udccc <strong>Free Features<\/strong><\/p>\n\n<p><strong>1. Display table Price Matrix<\/strong>\nReplace frontend dropdown with a price matrix table.<\/p>\n\n<p><strong>2. Drag &amp; drop order of variations<\/strong>\nOn the Edit Product page you have the ability to drag and drop the variation attributes in whatever order they need to be in.<\/p>\n\n<p><strong>3. Quick &amp; Easy Enter Price<\/strong>\nEnter regular and sale prices for every variation in one popup, with instant validation (the sale price must be lower than the regular price).<\/p>\n\n<p><strong>4. Badges: \"Best Value\" and \"Popular\"<\/strong>\nHighlight a price cell with a badge. Label, text color, background color and order of each badge can be changed in the settings. Each badge can be used once per product.<\/p>\n\n<p><strong>5. Bulk order (buy multiple variations at once)<\/strong>\nCustomers choose a quantity in each cell and add several variations to the cart with one \"Add Selected to Cart\" button. Stock, price and quantity limits are checked by WooCommerce.<\/p>\n\n<p><strong>6. Add to cart behaviour<\/strong>\nChoose how the table works: select a variation, click a price to add it to the cart, or bulk order.<\/p>\n\n<p><strong>7. Out of stock cells<\/strong>\nVariations that are out of stock or not purchasable are shown as unavailable and cannot be selected.<\/p>\n\n<p>\ud83d\udccc <strong>PRO Features<\/strong><\/p>\n\n<p><strong>1. Unlimited Products<\/strong>\nWith free version, support with two attributes. But with PRO version you use unlimited.<\/p>\n\n<p><strong>2. Support 04 attributes<\/strong>\nDisplay 4 table styles: two attributes, three attributes width direction vertical, three attributes with direction horizontal, four attributes.<\/p>\n\n<p><strong>3. Premium Support<\/strong>\nGet free support and free lifetime updates at https:\/\/azmarket.net\/item\/price-matrix-for-woocommerce<\/p>\n\n<h4>How it works<\/h4>\n\n<p>https:\/\/www.youtube.com\/watch?v=8MPumBOZrGk<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"is%20this%20plugin%20compatible%20with%20the%20latest%20version%20of%20wordpress%20and%20woocommerce%3F\"><h3>Is this plugin compatible with the latest version of WordPress and WooCommerce?<\/h3><\/dt>\n<dd><p>Yes. Version 1.3.0 is tested with WordPress 7.1 and WooCommerce 11.2, and is compatible with High-Performance Order Storage (HPOS).<\/p><\/dd>\n<dt id=\"how%20do%20i%20add%20a%20badge%20to%20a%20price%3F\"><h3>How do I add a badge to a price?<\/h3><\/dt>\n<dd><p>Edit the product, open \"Input Price\" in the Price Matrix box and click the tag icon next to a cell. Badge labels and colors are set in Price Matrix &gt; Settings &gt; Badges.<\/p><\/dd>\n<dt id=\"how%20do%20i%20enable%20bulk%20order%3F\"><h3>How do I enable bulk order?<\/h3><\/dt>\n<dd><p>Go to Price Matrix &gt; Settings and choose \"Bulk order (multiple variations)\" in \"Add to cart behaviour\". Each cell then gets a quantity box and an \"Add Selected to Cart\" button is shown under the table.<\/p><\/dd>\n<dt id=\"can%20i%20add%20more%20badge%20types%3F\"><h3>Can I add more badge types?<\/h3><\/dt>\n<dd><p>Yes, developers can use the <code>wppm_badges<\/code> filter:<\/p>\n\n<pre><code>add_filter( 'wppm_badges', function( $badges ) {\n    $badges['new'] = array( 'label' =&gt; 'New', 'color' =&gt; '#ffffff', 'bg' =&gt; '#2271b1', 'order' =&gt; 3 );\n    return $badges;\n} );\n<\/code><\/pre><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.3.1 - 2026-10-22<\/h4>\n\n<ul>\n<li>Security: Nonce (CSRF) protection for the add to cart and bulk order requests, with automatic refresh on cached pages<\/li>\n<li>Security: Stricter validation of attributes, directions and order values sent from the product editor<\/li>\n<li>Security: The [wc_pricematrix] shortcode no longer shows prices of draft, private or password protected products<\/li>\n<li>Security: Colors from the settings are validated again before being printed in the page CSS<\/li>\n<li>Fixed: Click to add to cart now runs the same WooCommerce validation as the normal add to cart form<\/li>\n<\/ul>\n\n<h4>1.3.0 - 2026-10-22<\/h4>\n\n<ul>\n<li>Added: Separate Regular \/ Sale price inputs in the \"Input Price\" popup, with instant validation and error tooltips<\/li>\n<li>Added: Badges \"Best Value\" and \"Popular\" per price cell (tag icon + popover picker), one badge of each type per product<\/li>\n<li>Added: Badge settings: label, text color, background color and order, with live preview<\/li>\n<li>Added: Bulk order mode: quantity box in each cell, totals and \"Add Selected to Cart\" button<\/li>\n<li>Added: \"Add to cart behaviour\" setting: Select variation \/ Click to add to cart \/ Bulk order<\/li>\n<li>Added: Out of stock and unavailable variations are shown as unavailable and cannot be selected<\/li>\n<li>Changed: New design for the \"Input Price\" popup (auto width, header, close button) and for frontend tooltips<\/li>\n<li>Changed: Popup and price matrix scripts\/styles are refreshed automatically after updates (cache busting)<\/li>\n<li>Fixed: Saving prices no longer resets out of stock variations to \"In stock\"<\/li>\n<li>Fixed: \"Input Price\" popup notice was visible on non-product admin screens<\/li>\n<li>Fixed: Theme focus outline showing inside the quantity box<\/li>\n<\/ul>\n\n<h4>1.2.3 - 2026-10-21<\/h4>\n\n<ul>\n<li>Added: Require WooCommerce to be active before the plugin can be activated<\/li>\n<li>Added: Declare compatibility with WooCommerce HPOS and Cart\/Checkout blocks<\/li>\n<li>Fixed: Security - REST endpoints now require permission to edit the product, settings and price saving use nonces<\/li>\n<li>Fixed: Security - SQL injection in add to cart and price lookup queries<\/li>\n<li>Fixed: Add to cart from the matrix (moved to WooCommerce AJAX endpoint, cart is not loaded in REST requests)<\/li>\n<li>Fixed: Saving prices now uses WooCommerce CRUD so variation prices, lookup tables and caches stay in sync<\/li>\n<li>Fixed: PHP 8.x fatal errors and warnings (count() on null, undefined variables\/properties, dynamic properties)<\/li>\n<li>Fixed: Price matrix and \"hide dropdown\" only applied to products with Price Matrix enabled<\/li>\n<li>Fixed: Checkout quantity column disappeared for products without quantity attribute<\/li>\n<li>Fixed: Replace deprecated wc_enqueue_js() and legacy WooCommerce script handles<\/li>\n<li>Changed: Text domain is now price-matrix-for-woocommerce (matches the plugin slug for WordPress.org language packs), new .pot file<\/li>\n<li>Changed: PRO notice is dismissible and only shown on plugin\/product screens<\/li>\n<li>Changed: Settings page cleaned up (correct labels and help texts, reset now applies immediately)<\/li>\n<li>Tested: Compatible with WooCommerce 11.2<\/li>\n<li>Tested: Compatible with WordPress 7.1.3<\/li>\n<\/ul>\n\n<h4>1.2.2 - 2022-03-07<\/h4>\n\n<ul>\n<li>Fixed: Undefined variable: show_tooltips<\/li>\n<li>Fixed: Notice: register_rest_route was called incorrectly is missing the required <code>permission_callback<\/code> argument<\/li>\n<li>Added: Remove the limit of using only three products<\/li>\n<\/ul>\n\n<h4>1.2.1 - 2020-07-31<\/h4>\n\n<ul>\n<li>Fixed: Load table<\/li>\n<li>Added: Support special characters in value of attributes, ex: Quotation mark (24\"x32\"),...<\/li>\n<\/ul>\n\n<h4>1.2.0 - 2019-03-24<\/h4>\n\n<ul>\n<li>Added: Show all product enable Price Matrix at All Products page<\/li>\n<li>Added: Support 01 attribute<\/li>\n<li>Fixed: Remove\/add row<\/li>\n<\/ul>\n\n<h4>1.0.0 - 2018-07-01<\/h4>\n\n<ul>\n<li>Released<\/li>\n<\/ul>","raw_excerpt":"Price Matrix For WooCommerce helps to show the price of variable products become easier and more intuitive under price list.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/84130","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=84130"}],"author":[{"embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/azmarket"}],"wp:attachment":[{"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=84130"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=84130"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=84130"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=84130"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=84130"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=84130"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}