Gekissimo.net - Opi ansaitsemaan rahaa webilläsi Internetissä!

Tilauksen rajoittaminen laajennuksen avulla Magento 2:ssa

Seuraava artikkeli auttaa sinua: Tilauksen rajoittaminen laajennuksen avulla Magento 2:ssa

Aiempi viestimme osoitti, kuinka voit rajoittaa “Lisää ostoskoriin” Magento 2:n laajennuksen avulla. Tänään näytän sinulle, kuinka .

Siitä on hyötyä, kun haluat asiakkaiden täyttävän tietyt ehdot ennen tilauksen tekemistä. Oletetaan, että haluat estää asiakkaita tekemästä tiettyä määrää pienempiä tilauksia myymälässäsi tai haluat rajoittaa asiakkaita tietyiltä maantieteellisiltä alueilta. Kaikissa näissä tapauksissa saatat joutua tarkistamaan tilauksen ehdot ennen sijoittamista.

Olen keksinyt ratkaisun rajoittaa asiakasta tekemästä tilausta ehtojen kautta.

Joten aloitetaan!

Tapa tilauksen rajoittamiseen Magento 2:n laajennuksen avulla

Rajataksemme Magento 2:n tilausta ehtojen kautta, käytämme plugin-menetelmää. Tässä menetelmässä meidän on luotava uusi laajennus, joka tarkistaa ehdot ennen tilauksen tekemistä Magento 2:ssa. Voit vahvistaa tilauksen alla olevien ohjeiden mukaisesti ennen kuin se tehdään Magento 2:ssa.

Vaihe 1: Luoda di.xml polulla app\code\Vendor\Module\etc\di.xml

< /config>

Vaihe 2: Luoda PaymentInfoManagement.php polulla app\code\Vendor\Module\Plugin\PaymentInfoManagement.php

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

nimiavaruus Vendor\Module\Plugin;

käytä Magento\Checkout\Api\PaymentInformationManagementInterface;

käytä Magento\Framework\Exception\LocalizedException;

käytä Magento\Quote\Api\Data\PaymentInterface;

käytä Magento\Quote\Api\Data\AddressInterface;

/**

* Class PaymentInfoManagement

*/

luokka PaymentInfoManagement

{

/**

* Vahvista tilauksen lähettäminen

*

* @param PaymentInformationManagementInterface $subject

* @param int $cartId

* @param PaymentInterface $paymentMethod

* @param AddressInterface|null $laskutusosoite

* @return mitätön

* @heittää LocalizedExceptionin

*/

julkinen toiminto ennen TallennaPaymentInformationAndPlaceOrder(

PaymentInformationManagementInterface $subject,

$cartId,

PaymentInterface $paymentMethod,

AddressInterface $billingAddress = null

) {

if (ehto tosi) {

throw new LocalizedException(__(“Tilausta ei voi tehdä.”));

}

}

}

Vaihe 3: Luoda GuestPaymentInfoManagement.php klo polku app\code\Vendor\Module\Plugin\GuestPaymentInfoManagement.php

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

nimiavaruus Vendor\Module\Plugin;

käytä Magento\Checkout\Api\GuestPaymentInformationManagementInterfacea;

käytä Magento\Framework\Exception\LocalizedException;

käytä Magento\Quote\Api\Data\AddressInterface;

käytä Magento\Quote\Api\Data\PaymentInterface;

/**

* Class GuestPaymentInfoManagement

*/

luokan GuestPaymentInfoManagement

{

/**

* Vahvista tilauksen lähettäminen

*

* @param GuestPaymentInformationManagementInterface $subject

* @param merkkijono $cartId

* @param merkkijono $sähköposti

* @param PaymentInterface $paymentMethod

* @param AddressInterface|null $laskutusosoite

* @return mitätön

* @heittää LocalizedExceptionin

*/

julkinen toiminto ennen TallennaPaymentInformationAndPlaceOrder(

GuestPaymentInformationManagementInterface $subject,

$cartId,

$sähköposti,

PaymentInterface $paymentMethod,

AddressInterface $billingAddress = null

)

{

if (ehto tosi) {

throw new LocalizedException(__(“Tilausta ei voi tehdä.”));

}

}

}

Ja siinä se!

Toivottavasti se auttaa sinua!

Jos sinulla on epäilyksiä tai kysymyksiä, kommentoi. Autan sinua mielelläni. 😇

Olisin myös kiitollinen, jos jakaisit ratkaisun Magento-yhteisön kanssa sosiaalisessa mediassa. 😊

Kiitos. 🍀

Table of Contents

🔥 Empfohlen:  Amy Steier, Gretel.ai:n koneoppimisen johtava tutkija - Haastattelusarja