ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π° ΡΠΊΠΈΠ΄ΠΎΠΊ (ΠΏΡΠΎΠΌΠΎΠΊΠΎΠ΄ΠΎΠ², ΠΊΡΠΏΠΎΠ½ΠΎΠ²) Π½Π° ΡΠ°ΠΉΡ, ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Ρ pistol88/cart., (*1)
ΠΠΎΠ΄ΡΠ»Ρ ΡΠΌΠ΅Π΅Ρ ΡΠ΅ΡΠ΅Π· Behavior Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ ΠΌΠ΅Π½ΡΡΡ ΡΠ΅Π½Ρ Π·Π°ΠΊΠ°Π·Π°, ΠΈΡΡ
ΠΎΠ΄Ρ ΠΈΠ· Π²ΠΈΠ΄Π° ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊΡΠΏΠΎΠ½Π°: Π½Π°ΠΊΠΎΠΏΠΈΡΠ΅Π»ΡΠ½ΡΠΉ, "ΠΏΡΠΎΡΠ΅Π½Ρ ΡΠΊΠΈΠ΄ΠΊΠΈ", "ΡΡΠΌΠΌΠ° ΡΠΊΠΈΠ΄ΠΊΠΈ"., (*2)
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ°
ΠΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, (*3)
php composer require pistol88/yii2-promocode "*"
ΠΠ»ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² composer.json, (*4)
"pistol88/yii2-promocode": "*",
Π Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ, (*5)
php composer update
ΠΠΈΠ³ΡΠ°ΡΠΈΡ:, (*6)
php yii migrate --migrationPath=vendor/pistol88/yii2-promocode/migrations, (*7)
ΠΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°
Π ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΡΠΉ ΡΠ°ΠΉΠ» ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ promocode, (*8)
Π targetModelList ΡΠΊΠ°Π·Π°ΡΡ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π΄Π»Ρ ΠΏΡΠΈΠ²ΡΠ·ΠΊΠΈ ΠΏΡΠΎΠΌΠΎΠΊΠΎΠ΄Π°, (*9)
'modules' => [
//..
'promocode' => [
'class' => 'pistol88\promocode\Module',
'informer' => 'pistol88\cart\widgets\CartInformer', // namespace to custom cartInformer widget
'informerSettings' => [], //settings for custom cartInformer widget
'usesModel' => 'dektrium\user\models\User', //ΠΠΎΠ΄Π΅Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ
//Π£ΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΠΊ ΠΊΠΎΡΠΎΡΡΠΌ Π±ΡΠ΄Π΅ΠΌ ΠΏΡΠΈΠ²ΡΠ·ΡΠ²Π°ΡΡ ΠΏΡΠΎΠΌΠΎΠΊΠΎΠ΄
'targetModelList' => [
'ΠΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ' => [
'model' => 'pistol88\service\models\Category',
'searchModel' => 'pistol88\service\models\category\CategorySearch'
],
'ΠΡΠΎΠ΄ΡΠΊΡΡ' => [
'model' => 'pistol88\shop\models\Product',
'searchModel' => 'pistol88\shop\models\product\ProductSearch'
],
],
],
//..
]
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅
Π§ΡΠΎΠ±Ρ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΏΡΠΎΠΌΠΎΠΊΠΎΠ΄Π°ΠΌΠΈ, Π½ΡΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ: ?r=promocode/promo-code, (*10)
ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠΌΠΎΠΊΠΎΠ΄Π° Π΄Π»Ρ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ:, (*11)
yii::$app->promocode->enter($promocode);
ΠΡΠΈΡΡΠΈΡΡ ΡΠ΅ΠΊΡΡΠΈΠΉ ΠΏΡΠΎΠΌΠΎΠΊΠΎΠ΄ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ:, (*12)
yii::$app->promocode->clear()
ΠΡΠΎΠ²Π΅ΡΠΈΡΡ, Π²Π²Π΅Π΄Π΅Π½ Π»ΠΈ ΠΏΡΠΎΠΌΠΎΠΊΠΎΠ΄:, (*13)
if(yii::$app->promocode->has())
ΠΠΎΠ»ΡΡΠΈΡΡ ΡΠ΅ΠΊΡΡΠΈΠΉ ΠΏΡΠΎΠΌΠΎΠΊΠΎΠ΄:, (*14)
yii::$app->promocode->getCode()
ΠΠΎΠ»ΡΡΠΈΡΡ ΠΏΡΠΎΡΠ΅Π½Ρ ΡΠΊΠΈΠ΄ΠΊΠΈ ΡΠ΅ΠΊΡΡΠΈΠΉ:, (*15)
$persent = yii::$app->promocode->get()->promocode->discount;
Π§ΡΠΎΠ±Ρ ΡΠΊΠΈΠ΄ΠΊΠ° ΠΏΡΠΈΠΌΠ΅Π½ΡΠ»Π°ΡΡ Π΄Π»Ρ pistol88/cart, Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ pistol88\promocode\behaviors\Discount Π΄Π»Ρ cart ΠΏΡΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ cart Π² ΠΊΠΎΠ½ΡΠΈΠ³Π΅:, (*16)
'cart' => [
'class' => 'pistol88\cart\Cart',
'as PromoDiscount' => ['class' => 'pistol88\promocode\behaviors\Discount'],
]
Π§ΡΠΎΠ±Ρ ΡΠΊΠΈΠ΄ΠΊΠ° ΠΏΡΠΈΠΌΠ΅Π½ΡΠ»Π°ΡΡ Π΄Π»Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ
ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ pistol88\promocode\behaviors\DiscountToElement Π΄Π»Ρ cart ΠΏΡΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° Π² ΠΊΠΎΠ½ΡΠΈΠ³Π΅:, (*17)
'cart' => [
'class' => 'pistol88\cart\Cart',
//'as PromoDiscount' => ['class' => 'pistol88\promocode\behaviors\Discount'],
'as ElementDiscount' => ['class' => 'pistol88\promocode\behaviors\DiscountToElement'],
]
ΠΠΈΠ΄ΠΆΠ΅ΡΡ
ΠΡΠ²ΠΎΠ΄ ΡΠΎΡΠΌΡ Π²Π²ΠΎΠ΄Π° ΠΏΡΠΎΠΌΠΎΠΊΠΎΠ΄Π° Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ:
=\pistol88\promocode\widgets\Enter::widget();?>, (*18)
Π¦Π΅Π»ΡΡ, ΠΏΠΎΠΊΠ°!, (*19)