portedcheese / category-product
Frame for catalog
v1.4.0
2024-04-05 07:13 UTC
Requires
This package is auto-updated.
Last update: 2024-04-05 07:15:05 UTC
README
Description
Категории и товары для сайта.
Категории могут быть вложенными, у каждой категории есть набор характеристик, которые можно синхронизировать на дочернии категории.
Товар относится к категори, может быть с метками и значениями характеристик от категории.
Install
php artisan migrate
php artisan vendor:publish --provider="PortedCheese\CategoryProduct\ServiceProvider" --tag=public --force
php artisan make:category-product
{--all : Run all}
{--menu : Config menu}
{--models : Export models}
{--observers : Export observers}
{--controllers : Export controllers}
{--policies : Export and create rules}
{--only-default : Create default rules}
{--scss : Export scss}
{--vue : Export vue}
{--js : Export scripts}
npm install flickity
npm install flickity-as-nav-for
Config
Шаблон для меню:
category-product::site.includes.categories-menu
Выгрузка конфигурации:
php artisan vendor:publish --provider="PortedCheese\CategoryProduct\ServiceProvider" --tag=config
Переменные конфигурации:
categoryAdminRoutes(true) - Использовать роуты для управления категориями из пакета
categoryShowRouteName(admin.categories.show) - Адрес просмотра категории
specificationAdminRoutes(true) - Использовать роуты для управления характеристиками из пакета
specificationGroupAdminRoutes(true) - Использовать роуты для управления группами характеристик из пакета
productLabelAdminRoutes(true) - Использовать роуты для управления метками товара из пакета
productCollectionAdminRoutes - Использовать роуты для управления коллекциями товара из пакета
productAdminRoutes(true) - Использовать роуты для управления товарами из пакета
productSpecificationAdminRoutes(true) - Использовать роуты для управления значениями характеристик из пакета
categoryFacade - Класс для фасада действий с категориями
specificationFacade - Класс для фасада действий с характеристиками
productFacade - Класс для фасада действий с товарами
productFilterFacade - Класс для фасада фильтрации товара
productFavoriteFacade - Класс для фасада избранных товаров
productSpecificationResource - Класс для ресурса характеристик
categorySiteRoutes(true) - Роуты категорий для сайта
subCategoriesPage(false) - Включить страницу подкатегорий
categoryProductsPerPage(18) - Товаров на страницу
productSiteRoutes(true) - Роуты товаров для сайта
productCollectionSiteRoutes (true) - Роуты коллекций товаров для сайта
defaultProductView(bar) - Отображение товаров по умолчанию
useSimpleTeaser(true) - Использовать изображение, которые будут обрезаны по размеру. Если переключить изображения не будут обрезаться
catalogPageName(Каталог) - Заголовок страницы каталога
productCollectionsName(Коллекции) - Заголовок страницы Коллекций
categoryNest(3) - максимальная вложенность категорий
defaultSort(title) - Сортировка товаров по умолчанию
defaultSortDirection(asc) - Стандартное направление сортировки
defaultCheckboxLimit(3) - Сколько элементов группы чекбоксов в фильтре будут показаны, больше будут скрыты и появится поиск
sortOptions - Список сортировок
Versions
v1.3.0 - v1.3.4:
- Коллекции товаров: управление, отображение + настройки конфига для коллекций
Проверить переопределение:
- Модели Product (связка, очистка кэша коллекций)
- ProductObserver (очистка коллекций)
- Admin/ProductController > create, edit, show
- Шаблонов admin.menu & admin.products.create&edit&show
- Шаблона site.products.includes.show-top-section (вывод подборок)
Обновление:
- php artisan migrate
- php artisan make:category-products --models --observers --controllers --policies (создать коллекции)
v1.2.6-1.2.7:
- Актуализация Избранного (при открытии избранных товаров), очистка от удаленных товаров
Проверить переопределение:
- Site/ProductController > favoritelist()
- Фасада ProductFavoriteManager
v1.2.4, 1.2.5:
- вывод неопубликованных товаров в избранном
Проверить переопределение:
- тизера товара site.products.includes.teaser
- метода Site/ProductController > favoriteList
Обновление:
- php artisan vendor:publish --provider="PortedCheese\CategoryProduct\ServiceProvider" --tag=public --force
- npm run prod
v1.2.3:
- обновление выборки дерева категорий для меню каталога
Проверить переопределение:
- CategoryActions > getTree, makeTreeDataWithNoParent
v1.2.0-v1.2.2:
- Публикация/Снятие с публикации Категории (add published_at, default value = now())
- Добавлены права на публикацию
- Если снять с публикации категорию - снимаются с публикации все подкатегории и товары
- Невозможно опубликовать товар в неопубликованной категории
- Невозможно опубликовать подкатегории, если родитель снять с публикации
Обновление:
- php artisan migrate (добавит поле публикации с текущей датой ко всем категориям проекта)
- если в проекте есть выборки категорий, доавить в выборку проверку статуса публикации
Проверить переопределение:
- ProductActionsManager, Admin/ParoductController > changePublished, Site/CategoryController > index,show, CategoryObserver > creationg, updated
- шаблонов: admin.catrgories.includes.table-list
v1.1.2:
- base 4.0
v1.1.1:
- Добавлено описание к категории
- В метках, избранном и блоке "вы смотрели" не показываются снятые с публикации товары (дополнен ProductController & ProductActionManager)
Обновление:
- php artisan migrate
- проверить переопределение шаблонов категории (admin.catefories.create, admin.categories.edit, admin.categories.show, site.categories.show)
- Проверить переопределение модели Category > fillable, ProductController > label & favouriteList, ProductActionManager > getYouWatch
v1.1.0:
- base-settings 3.0 & fix productFilter
v1.0.5:
- Добавлены стили для слайдера и задержна на загрузку
- Добавлена синхронизация названий характеристик
Обновление:
- php artisan vendor:publish --provider="PortedCheese\CategoryProduct\ServiceProvider" --tag=public --force
- npm run prod