TIP: You can type at any time to perform a new search.
Product Brand Filtering in Website
website_sale_product_brand · OCA/e-commerce
- Repository
- OCA/e-commerce · module folder · Try on Runboat
- Module version
- 2.3.0
- Category
- e-commerce
- Folder size
- 0.64 MB
- License
- AGPL-3
- Application
- No
- Auto-installable
- No
- Website
- https://github.com/OCA/e-commerce
- Last tracking update
- 2026-08-07 09:06:25
- Authors
- Odoo Community Association (OCA), Serpent Consulting Services Pvt. Ltd., Tecnativa
- Maintainers
- Odoo Community Association (OCA), Serpent Consulting Services Pvt. Ltd., Tecnativa
- Committers
- Ricardoalso, Maksym Yankin, Weblate, OCA-git-bot, oca-ci, eduezerouali-tecnativa, AlexGarS73, miguel-S73
- Odoo dependencies
- Python dependencies
- geoip2
- System dependencies
- None
- Required by
- None
- Description
This module was written to extend the functionality of product filtering on website. It will allow you to filter product based on its brand. It also adds brand landing pages under `/shop/brand/<brand-slug>` with dedicated header and footer content per brand. The module is multi-website aware: brand landing pages, brand listings, the website search index, and the sitemap only expose brands that belong to the current website (or are global). In the backend, the brand form and list view expose the Website field for users in `website.group_multi_website` so brands can be assigned to a specific website. While shopping online, we have seen various eShops having a feature to shop by brands which ODOO does not yet provide officially. Website Sale Product Brand fills the gap at certain extent and by providing basic search by brands, thus reducing end-user’s efforts in searching the products he/she wants to purchase.
Code Analysis ⓘ
Views touched (11)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
brand_filter_items |
Brand Filter Items | ir.ui.view | qweb | New |
categorie_link |
categorie_link | ir.ui.view | qweb | Inherits website_sale.categorie_link |
product_brands |
Brands | ir.ui.view | qweb | New |
product_title_brand_logo |
Product Page Brand Logo | ir.ui.view | qweb | Inherits website_sale.product_title |
res_config_settings_view_form |
res.config.settings | form | Inherits website_sale.res_config_settings_view_form | |
search_brands |
Search Box keeps brands | ir.ui.view | qweb | Inherits website_sale.search |
view_product_brand_form |
product.brand | form | Inherits product_brand.view_product_brand_form | |
view_product_brand_tree |
product.brand | tree | Inherits product_brand.view_product_brand_tree | |
website_sale_filter_brand_clear_filters |
Clear filters includes brands | ir.ui.view | qweb | Inherits website_sale.products |
website_sale_filter_brand_products_brands |
Brands Filter | ir.ui.view | qweb | Inherits website_sale.products |
website_sale_products_brand_landing |
website_sale_products_brand_landing | ir.ui.view | qweb | Inherits website_sale.products |
HTTP endpoints (5)
| Route(s) | Handler | Auth | Type | Methods | Flags |
|---|---|---|---|---|---|
/shop/brand_filter/load_letter |
WebsiteSale.brand_filter_load_letter |
public | jsonrpc | ALL | website |
/shop/brand_filter/load_more |
WebsiteSale.brand_filter_load_more |
public | jsonrpc | ALL | website |
/page/product_brands |
WebsiteSale.product_brands |
public | http | ALL | sudo website |
/shop, /shop/page/<int:page>, /shop/category/<model("product.public.category"):category>, /shop/category/<model("product.public.category"):category>/page/<int:page>, /shop/brands |
WebsiteSale.shop |
public | http | ALL | website |
| (inherited route override) | WebsiteSale.shop_brand |
public | http | ALL | website |
Models touched (4)
New fields (8)
-
align_brand_contentSelectiondefault='left'required=Trueselection=[('left', 'Left'), ('center', 'Center')] -
cover_imageImagemax_height=2560max_width=2560 -
published_products_countIntegercompute='_compute_published_products_count' -
show_brand_descriptionBooleandefault=True -
show_brand_nameBooleandefault=True -
show_without_published_productsBooleandefault=False -
website_descriptionHtmltranslate=True -
website_footerHtmltranslate=True
No public methods.
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (1)
-
brand_filter_display_modeSelectionreadonly=Falserelated='website_id.brand_filter_display_mode'
No public methods.
New fields (1)
-
brand_filter_display_modeSelectiondefault='list'help="Controls how brands are displayed in the shop filter: 'Full list' shows all brands, 'Limited list' shows the first 5 brands with an option to load more using 'Show more', and 'Alphabetical accordion' groups brands by letter when there are more than 50 brands."required=Trueselection=[('list', 'Full list'), ('limited', 'Limited list'), ('letters', 'Alphabetical accordion')]
No public methods.
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…