{"id":315119,"date":"2026-06-21T12:01:48","date_gmt":"2026-06-21T12:01:48","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/boldbrands-for-woocommerce\/"},"modified":"2026-07-16T12:30:09","modified_gmt":"2026-07-16T12:30:09","slug":"brandix-for-product-brands","status":"closed","type":"plugin","link":"https:\/\/fa.wordpress.org\/plugins\/brandix-for-product-brands\/","author":23277447,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.1","stable_tag":"1.0.1","tested":"7.0.4","requires":"5.6","requires_php":"8.0","requires_plugins":null,"header_name":"Brandix for Product Brands","header_author":"maha25","header_description":"Manage WooCommerce product brands with logo, description, shortcode, sidebar widget and Elementor grid &amp; slider widgets.","assets_banners_color":"aeb5b6","last_updated":"2026-07-16 12:30:09","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/themewant.com","header_author_uri":"https:\/\/profiles.wordpress.org\/maha25\/","rating":0,"author_block_rating":0,"active_installs":20,"downloads":195,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"maha25","date":"2026-06-21 12:01:30"},"1.0.1":{"tag":"1.0.1","author":"maha25","date":"2026-07-16 12:30:09"}},"upgrade_notice":{"1.0.1":"<p>Adds shop loop brands and an automatic &quot;all brands&quot; page. Requires PHP 8.0 \u2014 the previously declared 7.2 was never accurate.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.jpg":{"filename":"icon-128x128.jpg","revision":3580618,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.jpg":{"filename":"icon-256x256.jpg","revision":3580618,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3580618,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3580618,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":{"brandix\/brands-slider":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"brandix\/brands-slider","title":"Brands Slider","category":"widgets","icon":"slides","description":"A dependency-free carousel of WooCommerce product brands.","keywords":["brand","brands","woocommerce","slider","carousel","logo"],"textdomain":"brandix-for-product-brands","editorScript":"brandix-blocks","style":"brandix-frontend","editorStyle":"brandix-frontend","viewScript":"brandix-slider","supports":{"html":false,"align":["wide","full"]},"attributes":{"limit":{"type":"number","default":12},"orderby":{"type":"string","default":"name"},"order":{"type":"string","default":"ASC"},"image_size":{"type":"string","default":"medium"},"slides_per_view":{"type":"number","default":5},"slides_per_view_tablet":{"type":"number","default":3},"slides_per_view_mobile":{"type":"number","default":2},"space_between":{"type":"number","default":20},"autoplay_delay":{"type":"number","default":3000},"hide_empty":{"type":"boolean","default":true},"show_logo":{"type":"boolean","default":true},"show_name":{"type":"boolean","default":false},"show_count":{"type":"boolean","default":false},"loop":{"type":"boolean","default":true},"autoplay":{"type":"boolean","default":true},"pause_on_hover":{"type":"boolean","default":true},"show_arrows":{"type":"boolean","default":true},"show_pagination":{"type":"boolean","default":false}}},"brandix\/brands-grid":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"brandix\/brands-grid","title":"Brands Grid","category":"widgets","icon":"grid-view","description":"A responsive grid of WooCommerce product brands.","keywords":["brand","brands","woocommerce","grid","logo"],"textdomain":"brandix-for-product-brands","editorScript":"brandix-blocks","style":"brandix-frontend","editorStyle":"brandix-frontend","supports":{"html":false,"align":["wide","full"]},"attributes":{"columns":{"type":"number","default":4},"limit":{"type":"number","default":-1},"orderby":{"type":"string","default":"name"},"order":{"type":"string","default":"ASC"},"layout":{"type":"string","default":"grid"},"image_size":{"type":"string","default":"thumbnail"},"hide_empty":{"type":"boolean","default":true},"show_logo":{"type":"boolean","default":true},"show_name":{"type":"boolean","default":true},"show_count":{"type":"boolean","default":false},"show_desc":{"type":"boolean","default":false}}}},"tagged_versions":["1.0.0","1.0.1"],"block_files":[],"assets_screenshots":{"screenshot-1.jpg":{"filename":"screenshot-1.jpg","revision":3610237,"resolution":"1","location":"assets","locale":"","width":1468,"height":882},"screenshot-2.jpg":{"filename":"screenshot-2.jpg","revision":3610237,"resolution":"2","location":"assets","locale":"","width":1315,"height":839},"screenshot-3.jpg":{"filename":"screenshot-3.jpg","revision":3610237,"resolution":"3","location":"assets","locale":"","width":1352,"height":764},"screenshot-4.jpg":{"filename":"screenshot-4.jpg","revision":3610237,"resolution":"4","location":"assets","locale":"","width":1481,"height":652},"screenshot-5.jpg":{"filename":"screenshot-5.jpg","revision":3610237,"resolution":"5","location":"assets","locale":"","width":1581,"height":846}},"screenshots":{"1":"Brand taxonomy with logo upload.","2":"Single product brand display.","3":"Elementor Brands Grid widget.","4":"Elementor Brands Slider widget."}},"plugin_section":[],"plugin_tags":[14164,76538,48637,80,286],"plugin_category":[43,45],"plugin_contributors":[259207,227644],"plugin_business_model":[],"class_list":["post-315119","plugin","type-plugin","status-closed","hentry","plugin_tags-brands","plugin_tags-elementor","plugin_tags-product-brands","plugin_tags-shortcode","plugin_tags-woocommerce","plugin_category-customization","plugin_category-ecommerce","plugin_contributors-maha25","plugin_contributors-themewant","plugin_committers-maha25"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/brandix-for-product-brands_aeb5b6.svg","icon_2x":false,"generated":true},"screenshots":[{"src":"https:\/\/ps.w.org\/brandix-for-product-brands\/assets\/screenshot-1.jpg?rev=3610237","caption":"Brand taxonomy with logo upload."},{"src":"https:\/\/ps.w.org\/brandix-for-product-brands\/assets\/screenshot-2.jpg?rev=3610237","caption":"Single product brand display."},{"src":"https:\/\/ps.w.org\/brandix-for-product-brands\/assets\/screenshot-3.jpg?rev=3610237","caption":"Elementor Brands Grid widget."},{"src":"https:\/\/ps.w.org\/brandix-for-product-brands\/assets\/screenshot-4.jpg?rev=3610237","caption":"Elementor Brands Slider widget."},{"src":"https:\/\/ps.w.org\/brandix-for-product-brands\/assets\/screenshot-5.jpg?rev=3610237","caption":""}],"raw_content":"<!--section=description-->\n<p>Brandix for Product Brands adds a dedicated <strong>Brands<\/strong> taxonomy to WooCommerce, lets you attach a logo and description to each brand, and gives you several ways to display them on the front end.<\/p>\n\n<p>Everything is configured from <strong>WooCommerce &rarr; Settings &rarr; Brandix<\/strong>, where each tab is named after the place it changes.<\/p>\n\n<p>Live demo: <a href=\"https:\/\/themewant.com\/plugins\/brandix\/\">https:\/\/themewant.com\/plugins\/brandix\/<\/a>\nFull documentation: <a href=\"https:\/\/themewant.com\/plugins\/brandix\/documentation\/\">https:\/\/themewant.com\/plugins\/brandix\/documentation\/<\/a><\/p>\n\n<p><strong>Features<\/strong><\/p>\n\n<ul>\n<li>Custom Brand taxonomy linked to WooCommerce products<\/li>\n<li>Brand logo and rich description per brand<\/li>\n<li>Configurable brand position on the single product page \u2014 before \/ after the title, before \/ after the price, before \/ after the Add to Cart button, after the summary, in the product meta block, or in its own product tab<\/li>\n<li>Brand on every product card in the shop loop \u2014 Shop page, category \/ tag \/ brand archives, search results and related products<\/li>\n<li>Pick any page as the \"all brands\" page and the full brand grid is added to it automatically \u2014 no shortcode needed<\/li>\n<li><code>[brandix]<\/code> grid shortcode and <code>[brandix_slider]<\/code> carousel shortcode, both usable from PHP via <code>do_shortcode()<\/code><\/li>\n<li>\"Brands Grid\" and \"Brands Slider\" blocks for the block editor<\/li>\n<li>\"Brands Grid\" and \"Brands Slider\" widgets for Elementor<\/li>\n<li>Classic sidebar widget with logo and product count<\/li>\n<li>The slider is a dependency-free vanilla JS carousel \u2014 no jQuery, no external libraries<\/li>\n<li>Fully translatable, including the block editor controls<\/li>\n<li>WP.org standards: escaped output, sanitized input, ABSPATH check, HPOS compatible<\/li>\n<\/ul>\n\n<h3>Usage<\/h3>\n\n<h4>Settings tabs<\/h4>\n\n<ul>\n<li><strong>General<\/strong> \u2014 the master on\/off switch and the \"all brands\" page.<\/li>\n<li><strong>Single Product<\/strong> \u2014 the brand on one product's own page.<\/li>\n<li><strong>Shop Loop<\/strong> \u2014 the brand on each product card in a product list.<\/li>\n<li><strong>Single Brand Page<\/strong> \u2014 the header above the product list on <code>\/brand\/nike\/<\/code>.<\/li>\n<li><strong>Brand Grid<\/strong> \u2014 the grid of every brand shown on the \"all brands\" page.<\/li>\n<li><strong>Logo Size<\/strong> \u2014 which image file to load, and an optional max logo width \/ height.<\/li>\n<li><strong>Shortcodes<\/strong> \u2014 a reference list of every shortcode and attribute.<\/li>\n<li><strong>Advanced<\/strong> \u2014 rebuild the brand URLs if a brand page 404s.<\/li>\n<\/ul>\n\n<h4>\"All brands\" page<\/h4>\n\n<p><strong>WooCommerce &rarr; Settings &rarr; Brandix &rarr; General<\/strong> lets you pick any page as the page that lists every brand. The brand grid is then added to that page for you \u2014 you do not need to place a shortcode. Change how it looks on the <strong>Brand Grid<\/strong> tab.<\/p>\n\n<p>Every single brand page also gets an \"All Brands\" link back to this page.<\/p>\n\n<p>If the page already contains a <code>[brandix]<\/code> or <code>[brandix_brands]<\/code> shortcode, yours is used as-is and nothing is added, so you keep full control when you want it.<\/p>\n\n<h4>Shop loop<\/h4>\n\n<p><strong>WooCommerce &rarr; Settings &rarr; Brandix &rarr; Shop Loop<\/strong> adds the brand to every product card on the Shop page, the product category, tag and brand archives, and any other product loop such as related products.<\/p>\n\n<p>You can pick the position, an optional label, and whether to show the logo, the name, or both.<\/p>\n\n<p>The brand links to the brand page in the two Add to Cart positions only. The earlier positions sit inside the product link WooCommerce opens around the card, so the brand is plain text there \u2014 a link inside a link is not valid HTML.<\/p>\n\n<h4>Grid shortcode<\/h4>\n\n<pre><code>[brandix] (or `[brandix_brands]`)\n<\/code><\/pre>\n\n<p>Attributes (all optional):<\/p>\n\n<ul>\n<li><code>limit<\/code> \u2013 number of brands (default <code>-1<\/code> = all)<\/li>\n<li><code>columns<\/code> \u2013 1\u20138 (default <code>4<\/code>)<\/li>\n<li><code>orderby<\/code> \u2013 <code>name<\/code> | <code>slug<\/code> | <code>count<\/code> | <code>term_id<\/code> (default <code>name<\/code>)<\/li>\n<li><code>order<\/code> \u2013 <code>ASC<\/code> | <code>DESC<\/code> (default <code>ASC<\/code>)<\/li>\n<li><code>hide_empty<\/code> \u2013 <code>yes<\/code> | <code>no<\/code> (default <code>yes<\/code>)<\/li>\n<li><code>include<\/code> \u2013 comma-separated term IDs to include<\/li>\n<li><code>omit<\/code> \u2013 comma-separated term IDs to skip<\/li>\n<li><code>show_logo<\/code> \u2013 <code>yes<\/code> | <code>no<\/code> (default <code>yes<\/code>)<\/li>\n<li><code>show_name<\/code> \u2013 <code>yes<\/code> | <code>no<\/code> (default <code>yes<\/code>)<\/li>\n<li><code>show_count<\/code> \u2013 <code>yes<\/code> | <code>no<\/code> (default <code>no<\/code>)<\/li>\n<li><code>show_desc<\/code> \u2013 <code>yes<\/code> | <code>no<\/code> (default <code>no<\/code>)<\/li>\n<li><code>image_size<\/code> \u2013 any registered image size (default <code>thumbnail<\/code>)<\/li>\n<li><code>layout<\/code> \u2013 <code>grid<\/code> | <code>list<\/code> (default <code>grid<\/code>)<\/li>\n<li><code>class<\/code> \u2013 extra CSS class on the wrapper<\/li>\n<\/ul>\n\n<p>Example:<\/p>\n\n<pre><code>[brandix columns=\"6\" limit=\"12\" orderby=\"name\" show_count=\"yes\"]\n<\/code><\/pre>\n\n<h4>Slider shortcode<\/h4>\n\n<pre><code>[brandix_slider]\n<\/code><\/pre>\n\n<p>A dependency-free carousel of brands \u2014 the same slider as the Elementor widget and the Slider block, usable in any theme without either.<\/p>\n\n<p>Attributes (all optional):<\/p>\n\n<ul>\n<li><code>limit<\/code> \u2013 number of brands (default <code>12<\/code>)<\/li>\n<li><code>orderby<\/code> \u2013 <code>name<\/code> | <code>slug<\/code> | <code>count<\/code> | <code>term_id<\/code> (default <code>name<\/code>)<\/li>\n<li><code>order<\/code> \u2013 <code>ASC<\/code> | <code>DESC<\/code> (default <code>ASC<\/code>)<\/li>\n<li><code>hide_empty<\/code> \u2013 <code>yes<\/code> | <code>no<\/code> (default <code>yes<\/code>)<\/li>\n<li><code>include<\/code> \u2013 comma-separated term IDs to include<\/li>\n<li><code>omit<\/code> \u2013 comma-separated term IDs to skip<\/li>\n<li><code>show_logo<\/code> \u2013 <code>yes<\/code> | <code>no<\/code> (default <code>yes<\/code>)<\/li>\n<li><code>show_name<\/code> \u2013 <code>yes<\/code> | <code>no<\/code> (default <code>no<\/code>)<\/li>\n<li><code>show_count<\/code> \u2013 <code>yes<\/code> | <code>no<\/code> (default <code>no<\/code>)<\/li>\n<li><code>image_size<\/code> \u2013 any registered image size (default <code>medium<\/code>)<\/li>\n<li><code>columns<\/code> \u2013 alias for the desktop slides shown (overrides <code>slides_per_view<\/code>)<\/li>\n<li><code>slides_per_view<\/code> \/ <code>slides_per_view_tablet<\/code> \/ <code>slides_per_view_mobile<\/code> \u2013 slides per breakpoint (default <code>5<\/code> \/ <code>3<\/code> \/ <code>2<\/code>)<\/li>\n<li><code>space_between<\/code> \/ <code>space_between_tablet<\/code> \/ <code>space_between_mobile<\/code> \u2013 gap between slides in px (default <code>20<\/code> \/ <code>16<\/code> \/ <code>12<\/code>)<\/li>\n<li><code>loop<\/code> \u2013 <code>yes<\/code> | <code>no<\/code> (default <code>yes<\/code>)<\/li>\n<li><code>autoplay<\/code> \u2013 <code>yes<\/code> | <code>no<\/code> (default <code>yes<\/code>)<\/li>\n<li><code>autoplay_delay<\/code> \u2013 autoplay interval in ms (default <code>3000<\/code>)<\/li>\n<li><code>pause_on_hover<\/code> \u2013 <code>yes<\/code> | <code>no<\/code> (default <code>yes<\/code>)<\/li>\n<li><code>show_arrows<\/code> \u2013 <code>yes<\/code> | <code>no<\/code> (default <code>yes<\/code>)<\/li>\n<li><code>show_pagination<\/code> \u2013 <code>yes<\/code> | <code>no<\/code> (default <code>no<\/code>)<\/li>\n<\/ul>\n\n<p>Example:<\/p>\n\n<pre><code>[brandix_slider limit=\"12\" slides_per_view=\"5\" autoplay=\"yes\" show_arrows=\"yes\"]\n<\/code><\/pre>\n\n<h4>In PHP templates<\/h4>\n\n<pre><code>&lt;?php echo do_shortcode( '[brandix columns=\"4\" limit=\"8\"]' ); ?&gt;\n\n&lt;?php echo do_shortcode( '[brandix_slider limit=\"12\"]' ); ?&gt;\n<\/code><\/pre>\n\n<h4>Blocks<\/h4>\n\n<p>In the block editor, search for <strong>Brands Grid<\/strong> or <strong>Brands Slider<\/strong>. Both render through the same code as the shortcodes, so the editor preview matches the front end.<\/p>\n\n<h4>Sidebar widget<\/h4>\n\n<p><strong>Appearance &rarr; Widgets<\/strong> &rarr; add <strong>Product Brands<\/strong> to any sidebar.<\/p>\n\n<h4>Elementor<\/h4>\n\n<p>Search the Elementor editor panel for <strong>Brands Grid<\/strong> or <strong>Brands Slider<\/strong>. Both have their own style controls for logo size, spacing, colours and the slider arrows \/ dots.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin folder to <code>\/wp-content\/plugins\/<\/code> or install it through the Plugins screen.<\/li>\n<li>Activate the plugin.<\/li>\n<li>Go to <strong>Products &rarr; Brands<\/strong> to add brands and their logos.<\/li>\n<li>Go to <strong>WooCommerce &rarr; Settings &rarr; Brandix<\/strong> to choose where brands appear.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20work%20without%20elementor%3F\"><h3>Does this work without Elementor?<\/h3><\/dt>\n<dd><p>Yes. The blocks, shortcodes and sidebar widget work everywhere. The Elementor widgets only load when Elementor is active.<\/p><\/dd>\n<dt id=\"does%20the%20slider%20need%20jquery%20or%20a%20carousel%20library%3F\"><h3>Does the slider need jQuery or a carousel library?<\/h3><\/dt>\n<dd><p>No. It is plain JavaScript with no dependencies, and it is only loaded on pages that actually contain a slider.<\/p><\/dd>\n<dt id=\"is%20hpos%20supported%3F\"><h3>Is HPOS supported?<\/h3><\/dt>\n<dd><p>Yes, the plugin declares compatibility with WooCommerce High-Performance Order Storage (Custom Order Tables).<\/p><\/dd>\n<dt id=\"a%20brand%20page%20shows%20%22page%20not%20found%22.%20how%20do%20i%20fix%20it%3F\"><h3>A brand page shows \"Page not found\". How do I fix it?<\/h3><\/dt>\n<dd><p>Go to <strong>WooCommerce &rarr; Settings &rarr; Brandix &rarr; Advanced<\/strong>, tick <strong>Repair brand links<\/strong> and press Save. It rebuilds WordPress's list of URLs and unticks itself afterwards.<\/p><\/dd>\n<dt id=\"can%20i%20translate%20the%20plugin%3F\"><h3>Can I translate the plugin?<\/h3><\/dt>\n<dd><p>Yes. Every string, including the block editor controls, is translatable and a <code>.pot<\/code> file ships in <code>\/languages<\/code>.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>New: brand display on the shop loop product cards, with its own \"Shop Loop\" settings section.<\/li>\n<li>New: the \"all brands\" page selected under General now renders the brand grid automatically and is linked from each brand page as \"All Brands\".<\/li>\n<li>Fix: the \"all brands\" page setting was saved but never read, so choosing a page had no effect.<\/li>\n<li>Fix: SVG brand logos rendered as a 1x1 pixel on the brand page, the single product page and the shop loop, because WordPress cannot read an SVG's intrinsic size and falls back to width=\"1\" height=\"1\".<\/li>\n<li>Fix: the block editor controls could never be translated, because the text domain was passed as a variable instead of a literal and the script translations were never registered.<\/li>\n<li>Fix: the slider pagination dots used a hardcoded English label.<\/li>\n<li>Settings are reorganised and rewritten in plain language. Every tab is now named after the place it changes, and each option has a note explaining what it does. The old \"Archive\" tab is now \"Brand Grid\", and the single brand page gets its own \"Single Brand Page\" tab instead of hiding under General.<\/li>\n<li>Fix: the single brand page header shared the Brand Grid's Show Logo and Show Product Count toggles, so restyling the grid silently changed the header. It now has its own toggles, seeded from your current grid values on upgrade \u2014 nothing changes on an existing site.<\/li>\n<li>The shortcode reference moved out of General onto its own \"Shortcodes\" tab.<\/li>\n<li>Requires PHP is now correctly declared as 8.0 \u2014 the plugin already used PHP 8.0 syntax and could not run on 7.2.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"Manage WooCommerce product brands with logos and descriptions. Show them with blocks, shortcodes, a widget, or Elementor grid and slider widgets.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/315119","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=315119"}],"author":[{"embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/maha25"}],"wp:attachment":[{"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=315119"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=315119"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=315119"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=315119"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=315119"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=315119"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}