Product categories with thumbnails and sorting by visits (top visited categories)
Medusa admin UI modul with category thumbnail support and top by visits of category, using metadata for store the information about thumbnail and visits count. For now only available language of UI is Ukrainian, but I'm working on a translations.
Features
- Product category thumbnail
- Category visits count
- REST API Endpoints for top categories
- Easy UI management of all product categories (WARNING: only available language - Ukrainian, for now)
Prerequisites
How to Install
1. Run the following command in the directory of the Medusa backend:
1yarn add medusa-plugin-top-categories
2. In Copy to clipboard
medusa-config.js
add the following configuration at the end of the Copy to clipboardplugins
array:123456789const plugins = [// ...{resolve: `medusa-plugin-top-categories`,options: {enableUI: true,},},];
Screenshots
Test the Plugin
Run the following command in the directory of the Medusa backend to run the backend:
1yarn dev
In StoreFront project you can use the thumbnail by
1category.metadata?.thumbnailImageUrl
Example:
12345678910import { getCategoriesList } from "@lib/data"const { product_categories } = await getCategoriesList()const thumbnails = productCategories.map((category) => (<imgsrc={decodeURI((category.metadata?.thumbnailImageUrl as string) || "")}alt={category.name}/>))
In StoreFront project you can use the visits count (if for any reason you would need too) by
1category.metadata?.visitsCount
Example:
123456789import { getCategoriesList } from "@lib/data"const { product_categories } = await getCategoriesList()const categoriesVisits = productCategories.map((category) => (<p>{`${((category.metadata?.visitsCount as number) || 0)}`}</p>))
REST API Endpoints
Store Endpoints:
- Copy to clipboard
/store/product-categories/visit/[id]
:- GET with mandatory query parameter of ID of category
- Increments the visitsCounts of selected category and returns updated category
- Copy to clipboard
/store/product-categories/top
:- GET with optional query parameters of limit, offset and expand
- Returns sorted by visitsCount categories, top of categories, can be expanded like regular categories endpoint. Returned categories further enriched by two new properties: thumbnail and visits
- Copy to clipboard
/store/product-categories/top/[id]
:- GET with optional query parameters of limit, offset and expand, and mandatory query parameter of ID of category
- Increments the visitsCounts of selected category and returns updated category. Returned category further enriched by two new properties: thumbnail and visits
- Copy to clipboard
/store/product-categories/top/handle/[handle]
:- GET with optional query parameters of limit, offset and expand, and mandatory query parameter of handle of category
- Increments the visitsCounts of selected category and returns updated category. Returned category further enriched by two new properties: thumbnail and visits