mangoweb-sylius/sylius-payment-restrictions-plugin
最新稳定版本:v1.0.0
Composer 安装命令:
composer require mangoweb-sylius/sylius-payment-restrictions-plugin
包简介
Payment restriction plugin for Sylius
README 文档
README
Payment Restrictions Plugin
Features
- Restrict payment method by zone. This enables to limit selected payment methods to specific zones or areas from the delivery address.
- Restrict payment method by shipping method - this means that it can disable specific shipment-payment combinations.
Installation
-
Run
$ composer require mangoweb-sylius/sylius-payment-restrictions-plugin. -
Add plugin class to your
config/bundles.php:return [ ... MangoSylius\PaymentRestrictionPlugin\MangoSyliusPaymentRestrictionPlugin::class => ['all' => true], ];
-
Your Entity
PaymentMethodhas to implement\MangoSylius\PaymentRestrictionPlugin\Model\PaymentMethodRestrictionInterface. You can use TraitMangoSylius\PaymentRestrictionPlugin\Model\PaymentMethodRestrictionTrait.<?php declare(strict_types=1); namespace App\Entity\Payment; use Doctrine\Common\Collections\ArrayCollection; use Doctrine\ORM\Mapping as ORM; use Sylius\Component\Core\Model\Payment as BasePayment; use MangoSylius\PaymentRestrictionPlugin\Model\PaymentMethodRestrictionInterface; use MangoSylius\PaymentRestrictionPlugin\Model\PaymentMethodRestrictionTrait; /** * @ORM\Entity * @ORM\Table(name="sylius_payment") */ class PaymentMethod extends BasePayment implements PaymentMethodRestrictionInterface { use PaymentMethodRestrictionTrait; public function __construct() { parent::__construct(); $this->shippingMethods = new ArrayCollection(); } }
-
Change
@SyliusAdmin/PaymentMethod/_form.html.twig.... <div class="ui segment"> <h4 class="ui dividing header">{{ 'sylius.ui.details'|trans }}</h4> {{ form_errors(form) }} <div class="three fields"> {{ form_row(form.code) }} {{ form_row(form.zone) }} {{ form_row(form.position) }} </div> {{ form_row(form.enabled) }} <div class="two fields"> {{ form_row(form.channels) }} {{ form_row(form.shippingMethods) }} </div> </div> ...
-
Create and run doctrine database migrations.
For guide to use your own entity see Sylius docs - Customizing Models
Development
Usage
- Develop your plugin in
/src - See
bin/for useful commands
Testing
After your changes you must ensure that the tests are still passing.
$ composer install
$ bin/console doctrine:schema:create -e test
$ bin/behat
$ bin/phpstan.sh
$ bin/ecs.sh
License
This library is under the MIT license.
Credits
Developed by manGoweb.
统计信息
- 总下载量: 16.82k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 4
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2019-11-25
