Browse the catalogue brands
Expose the brands in the navigation menu and on their own /b/ pages.
Overview
When brands are enabled, Front-Commerce adds a Brands entry to the
navigation menu, listing every active brand of the catalogue, and serves one
page per brand at /b/<slug>. A brand page behaves like a category page: same
layer of products, same facets, same sorting and pagination — restricted to the
products of that brand.
A /b landing page lists all the brands, and is what the "See all Brands" link
of the menu points to.
Enable the feature
Brands are driven by the back office, not by an environment variable: enable
Afficher une catégorie dédiée aux marques (CAT_display_brands_category) in
the catalogue options of your Gezy back office. Front-Commerce reads it from
/v2/ecommerce/config and exposes it as gezy.catalog.brands.enabled.
The back office must expose GET /api/v4/catalog/brands. If it does not, or if
the endpoint fails, the brand entry silently disappears from the menu: the rest
of the site is never impacted, and the failure is reported in the application
logs.
Requirements on the back office data
A brand is exposed only when it has:
- a
uuid_lm— the identifier used by the API and by the/b/URLs; - a public URL for the current e-commerce, in
seo_marques.
The generate_catalog_seo_entries cron creates the missing SEO entries
(/b/<slug>, meta title, meta description). A brand created by import or by API
and never opened in the back office therefore becomes browsable on the next cron
run, not before.
GraphQL
query {
brands {
id
name
path
}
brand(id: "rossignol") {
name
layer(params: { size: 10, from: 0 }) {
total
products {
sku
}
}
}
}
brand(id:) accepts either the brand uuid or the slug of its URL.