fixstacks / module-zero-brands
Zero for Magento Open Source: shop by brand: a page per brand, an A–Z of brands, the brand on product pages.
Package info
github.com/Fixstacks/module-zero-brands
Type:magento2-module
pkg:composer/fixstacks/module-zero-brands
Requires
- php: ~8.2.0||~8.3.0||~8.4.0
- fixstacks/module-zero-layered-navigation: ^1.0
- magento/framework: 103.0.*
- magento/module-backend: *
- magento/module-catalog: *
- magento/module-catalog-search: *
- magento/module-config: *
- magento/module-eav: *
- magento/module-elasticsearch: *
- magento/module-media-storage: *
- magento/module-store: *
- magento/module-theme: *
Requires (Dev)
None
Suggests
None
Provides
None
Conflicts
None
Replaces
None
This package is not auto-updated.
Last update: 2026-10-15 00:44:24 UTC
README
Shop by brand. Brands are the options of a dropdown product attribute
(manufacturer by default: Stores > Configuration > Zero > Brands); the
module gives each a page, an entry in the A–Z of brands, and a link on its
products' pages.
Install
Requires Magento Open Source 2.4.7–2.4.9 and PHP 8.2–8.4.
composer require fixstacks/module-zero-brands bin/magento setup:upgrade bin/magento setup:di:compile # production mode bin/magento setup:static-content:deploy # production mode bin/magento cache:flush
Composer installs fixstacks/module-zero-layered-navigation with it.
Part of fixstacks/zero, which installs the Zero theme and every Zero module at once.
Storefront
- /brands: every brand with products, by first letter (letter links), the featured ones first as logos.
- /brands/{url key}: the brand's logo and description over its
products, with the category page's filters, price slider, sorting and
pages (Zero_LayeredNavigation). The brand is fixed (
zero_fixed): not a filter group, no chip. Its own catalog layer (zero_brand: the search engine's collection under no category,Model\Layer\ItemCollectionProvider) so it covers the whole catalog. Filter and page links stay on its address (the request path is kept as the rewrite alias,Controller\Router); title, meta description and canonical are the brand's. - Product pages: the brand's logo (or name) above the name, linking to its page.
Admin
Catalog > Brands (resource Zero_Brands::brands): every brand with its
products, page and logo; a brand's form: name (the attribute option's admin
label), URL key, logo (JPEG, PNG, WebP or SVG, into pub/media/zero/brand),
description, meta title and description, featured and its position.
Deleting a brand deletes the option (its products lose it). A product's
brand is set on the product, as any attribute.
Setup\Patch\Data\ShowBrandAttribute makes manufacturer a filter
(category and search pages), searchable, shown on product pages and in
listings, in every attribute set.
Tests
dev/tests/zero-e2e/tests/brands.spec.ts (the A–Z, a brand page, a product's
brand link, an unknown brand), brands-admin.spec.ts (create with a logo,
the page, delete; writes, so local or ZERO_E2E_PROD_WRITES=1).
Disabling or removing
Its data lives in its own tables (zero_brand). With the module's code still in
place, bin/magento module:disable Zero_Brands followed by setup:upgrade
drops those tables (Magento's declarative schema), and enabling the module
again brings them back empty. To keep the data, switch the feature off in
Stores > Configuration where it has a setting, or back up first:
bin/magento setup:upgrade --safe-mode=1 dumps the data before anything is
dropped (--data-restore=1 puts it back). Deleting the module's code instead
leaves the tables in place.
License
OSL-3.0 or AFL-3.0, your choice: see NOTICE.md.
Zero is made by Fixstacks in partnership with Vilmate, a software development company. Documentation: https://fixstacks.com/zero/docs. Demo store: https://zero.fixstacks.com.