laraplug / shop
Laravel Ecommerce Module基于AsgardCMS构建
v0.3.0
2018-05-09 14:44 UTC
Requires
- php: >=7.0.0
- barryvdh/laravel-cors: ^0.11.0
- composer/installers: ~1.0
- idavoll/core-module: ~3.0
- laraplug/attribute-module: 0.*
- laraplug/cart-module: 0.*
- laraplug/order-module: 0.*
- laraplug/product-module: 0.*
- laraplug/theme-module: 0.*
Requires (Dev)
- orchestra/testbench: 3.5.*
- phpunit/phpunit: ~6.0
This package is not auto-updated.
Last update: 2024-09-29 05:55:16 UTC
README
此模块目前正在积极开发中。
需要帮助!英文翻译不完整。任何PR都将是受欢迎的 :)
Laraplug Shop
Laraplug Shop是一个灵活、可扩展的电子商务模块,基于AsgardCMS平台。
集成了以下模块
laraplug/product-module
laraplug/attribute-module
laraplug/cart-module
laraplug/order-module
laraplug/theme-module(已弃用)
目录
安装
-
通过composer安装包
composer require laraplug/shop
-
通过AsgardCMS的模块命令执行迁移
php artisan module:migrate Attribute php artisan module:migrate Product php artisan module:migrate Cart php artisan module:migrate Order --seed php artisan module:migrate Shop --seed
-
通过AsgardCMS的模块命令执行发布
php artisan module:publish Attribute php artisan module:publish Product php artisan module:publish Cart php artisan module:publish Order php artisan module:publish Shop
-
完成!
使用
扩展产品模型
要在BookStore
模块上创建自己的Book
产品Eloquent模型,只需像这样扩展\Modules\Product\Entities\Product
模型
use Modules\Product\Entities\Product; class Book extends Product { // Override entityNamespace to identify your Model on database protected static $entityNamespace = 'bookstore/book'; // Override this method to convert Namespace into Human-Readable name public function getEntityName() { return trans('bookstore::books.title.books'); } }
将EAV添加到产品模型
将$systemAttributes
添加到代码级别上利用laraplug/attribute-module,如下所示
use Modules\Product\Entities\Product; class Book extends Product { ... // Set systemAttributes to define EAV attributes protected $systemAttributes = [ 'isbn' => [ 'type' => 'input' ], 'media' => [ 'type' => 'checkbox', 'options' => [ 'audio-cd', 'audio-book', 'e-book', ] ] ]; }
可用的系统属性参数
type:输入类型字符串(如下所示)
input
:input[type=text]textarea
:teaxarearadio
:input[type=radio]checkbox
:input[type=checkbox]select
:selectmultiselect
:select[multiple]
options:选项键数组
has_translatable_values:布尔值
注册您的产品
您可以使用ProductManager
注册您的实体,如下所示
use Modules\Product\Repositories\ProductManager; use Modules\BookStore\Products\Book; class BookStoreServiceProvider extends ServiceProvider { ... public function boot() { ... // Register Book $this->app[ProductManager::class]->registerEntity(new Book()); ... } }
关于Laraplug
LaraPlug是一个开源项目,旨在在AsgardCMS之上构建电子商务解决方案。
贡献
我们欢迎任何pull-requests或问题 :)