Go to file Use this template
Brandon Shipley ac0dc3c9e3
CI / testsuite (mysql, 8.4, ) (push) Waiting to run Details
CI / testsuite (sqlite, 8.1, prefer-lowest) (push) Waiting to run Details
CI / Coding Standard & Static Analysis (push) Waiting to run Details
CI / testsuite (mysql, 8.1, ) (push) Has been cancelled Details
fix @uses statements in controller tests
2025-08-12 01:30:30 -07:00
.gitea/workflows composer require sqlite extension 2025-08-12 01:11:11 -07:00
.github/workflows gitea and github ci workflows 2025-03-27 01:48:12 -07:00
config product photos first commit - only upload base photo 2025-08-10 02:35:25 -07:00
src product photos controller test fixes, test out 2025-08-11 23:35:46 -07:00
templates product photos first commit - only upload base photo 2025-08-10 02:35:25 -07:00
tests fix @uses statements in controller tests 2025-08-12 01:30:30 -07:00
webroot upload test passing + file not getting deleted every time - well it is but we now use a copy lol 2025-08-10 02:50:22 -07:00
.gitignore product photos first commit - only upload base photo 2025-08-10 02:35:25 -07:00
LICENSE license update use MIT 2025-04-07 23:57:41 -07:00
README.md read me 2025-03-27 02:21:49 -07:00
composer.json add soft delete via muffin/trash to all product related tables 2025-04-08 01:30:40 -07:00
phpunit.xml.dist not used to plugin testing - trying to get working but fixtures not working yet 2025-03-26 00:07:05 -07:00

README.md

CakeProducts plugin for CakePHP

Installation

You can install this plugin into your CakePHP application using composer.

The recommended way to install composer packages is:

composer require hi-powered-dev/cake-products

Database Structure

Products belong to ProductCategories, ProductCategories is hierarchical and belongs to ProductCatalogs.

ProductCategoryAttributes belongs to ProductCategories and attributes are inherited from their parents up the category tree.

ProductCategoryAttributes can have many ProductCategoryAttributeOptions (constrained attributes)

You can either load the plugin with routes enabled to use default controller actions, or just use/extend the database structure and use your own controllers