Model
Extending the Model
config/shopper/models.php:
Database Schema
| Column | Type | Nullable | Default | Description |
|---|---|---|---|---|
id | bigint | no | auto | Primary key |
name | string | no | - | Brand name |
slug | string | yes | auto | URL-friendly identifier (unique) |
website | string | yes | null | Brand’s official website URL |
description | longtext | yes | null | Brand description |
position | integer | no | 0 | Display order position |
is_enabled | boolean | no | false | Brand visibility status |
seo_title | string(60) | yes | null | SEO meta title |
seo_description | string(160) | yes | null | SEO meta description |
metadata | json | yes | null | Additional custom data |
created_at | timestamp | yes | null | Creation timestamp |
updated_at | timestamp | yes | null | Last update timestamp |
Relationships
Products
A brand has many products:Query Scopes
Enabled Brands
Status Management
Update Status
Check Status
Media Management
Brands use Spatie Media Library for logo management:Creating Brands
Retrieving Brands
Disabling Brand Feature
If you don’t need brands in your store, you can disable the feature entirely:- Brand menu item is hidden from the sidebar
- Brand-related routes are not registered
- Brand selection is removed from product forms
Components
Publish Livewire components to customize:config/shopper/components/brand.php: