Magento教程:在Magento 2创建支付方式的步骤(magento案例)

2023年 7月 4日 发表评论
腾讯云正在大促:点击直达 阿里云超级红包:点击领取
免费/便宜/高性价比服务器汇总入口(已更新):点击这里了解

Magento教程:在Magento 2创建支付方式的步骤(magento案例)

外贸电子商务中,选择合适的支付方式很重要,而Magento作为一套专业热门的开源的电子商务系统,是可以直接设置创建支付方式的,安全即可靠。本文,主要为大家介绍如何在Magento 2中创建支付方式的教程步骤。

1、在app/code/Alwayly/CustomPayment/registration.php中创建registration.php文件,加入代码:

?php
MagentoFrameworkComponentComponentRegistrar::register(
MagentoFrameworkComponentComponentRegistrar::MODULE,
‘Alwayly_CustomPayment’,
__DIR__
);

2、在app/code/Alwayly/CustomPayment/etc/module.xml中创建module.xml文件,加入代码:

?xml version=”1.0″?
config xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xsi:noNamespaceSchemaLocation=”urn:magento:framework:Module/etc/module.xsd”
module name=”Alwayly_CustomPayment” setup_version=”1.0.0″
/module
/config

3、在app/code/Alwayly/CustomPayment/etc/config.xml中创建config.xml文件,加入代码:

?xml version=”1.0″?
config xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xsi:noNamespaceSchemaLocation=”../../Store/etc/config.xsd”
default
payment
custompayment
payment_action authorize /payment_action !– You can use another method –
model AlwaylyCustomPaymentModelPaymentMethod /model
active 1 /active
title Custom Payment /title
order_status pending_payment /order_status !– set default order status–
/custompayment
/payment
/default
/config

4、在app/code/Alwayly/CustomPayment/etc/adminhtml/system.xml中创建system.xml文件,加入代码:

?xml version=”1.0″?
config xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xsi:noNamespaceSchemaLocation=”urn:magento:module:Magento_Config:etc/system_file.xsd”
system
section id=”payment”
group id=”custompayment” translate=”label” sortOrder=”100″ showInDefault=”1″ showInWebsite=”1″ showInStore=”1″
label Custom Payment Method /label
field id=”active” translate=”label comment” sortOrder=”10″ type=”select” showInDefault=”1″ showInWebsite=”1″ showInStore=”0″
label Enable /label
source_model MagentoConfigModelConfigSourceYesno /source_model
/field
field id=”title” translate=”label” type=”text” sortOrder=”20″ showInDefault=”1″ showInWebsite=”1″ showInStore=”1″
label Custom Payment /label
/field
/group
/section
/system
/config

5、在app/code/Alwayly/CustomPayment/Model/PaymentMethod.php中创建PaymentMethod.php文件,加入代码:

?php

namespace AlwaylyCustomPaymentModel;

/**
* Pay In Store payment method model
*/
class PaymentMethod extends MagentoPaymentModelMethodAbstractMethod
{
/**
* Payment code
*
* @var string
*/
protected $_code = ‘custompayment’;
}

6、在app/code/Alwayly/CustomPayment/view/frontend/layout/checkout_index_index.xml中创建checkout_index_index.xml文件,加入代码:

?xml version=”1.0″?
page xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xsi:noNamespaceSchemaLocation=”urn:magento:framework:View/Layout/etc/page_configuration.xsd”
body
referenceBlock name=”checkout.root”
arguments
argument name=”jsLayout” xsi:type=”array”
item name=”components” xsi:type=”array”
item name=”checkout” xsi:type=”array”
item name=”children” xsi:type=”array”
item name=”steps” xsi:type=”array”
item name=”children” xsi:type=”array”
item name=”billing-step” xsi:type=”array”
item name=”component” xsi:type=”string” uiComponent /item
item name=”children” xsi:type=”array”
item name=”payment” xsi:type=”array”
item name=”children” xsi:type=”array”
item name=”renders” xsi:type=”array”
!– merge payment method renders here –
item name=”children” xsi:type=”array”
item name=”custompayment” xsi:type=”array”
item name=”component” xsi:type=”string” Emipro_Custompayment/js/view/payment/method-renderer /item
item name=”methods” xsi:type=”array”
item name=”custompayment” xsi:type=”array”
item name=”isBillingAddressRequired” xsi:type=”boolean” true /item
/item
/item
/item
/item
/item
/item
/item
/item
/item
/item
/item
/item
/item
/item
/argument
/arguments
/referenceBlock
/body
/page

7、在app/code/Alwayly/CustomPayment/view/frontend/web/js/view/payment/method-renderer.js上创建method-renderer.js文件,加入代码:

define(
[
‘uiComponent’,
‘Magento_Checkout/js/model/payment/renderer-list’
],
function (
Component,
rendererList
) {
‘use strict’;
rendererList.push(
{
type: ‘custompayment’,
component: ‘Alwayly_CustomPayment/js/view/payment/method-renderer/custompayment’
}
);
return Component.extend({});
}
);

8、在app/code/Alwayly/CustomPayment/view/frontend/web/js/view/payment/method-renderer/custompayment.js上创建custompayment.js文件,加入代码:

define(
[
‘Magento_Checkout/js/view/payment/default’
],
function (Component) {
‘use strict’;

return Component.extend({
defaults: {
template: ‘Alwayly_CustomPayment/payment/customtemplate’
}
});
}
);

9、在app/code/Alwayly/CustomPayment/view/frontend/web/template/payment/customtemplate.html上创建customtemplate.html文件,加入代码:

div > div > input type=”radio”
name=”payment[method]”
> data-bind=”attr: {‘id’: getCode()}, value: getCode(), checked: isChecked, click: selectPaymentMethod, visible: isRadioButtonVisible()”/
label data-bind=”attr: {‘for’: getCode()}” > /div
div > !– ko foreach: getRegion(‘messages’) –
!– ko template: getTemplate() – !– /ko –
!–/ko–
div > !– ko foreach: $parent.getRegion(getBillingAddressFormName()) –
!– ko template: getTemplate() – !– /ko –
!–/ko–
/div
div > !– ko foreach: $parent.getRegion(‘before-place-order’) –
!– ko template: getTemplate() – !– /ko –
!–/ko–
/div
div > div > button > type=”submit”
data-bind=”
click: placeOrder,
attr: {title: $t(‘Place Order’)},
css: {disabled: !isPlaceOrderActionAllowed()},
enable: (getCode() == isChecked())

disabled
span data-bind=”i18n: ‘Place Order'” /span
/button
/div
/div
/div
/div

到此,就完成了在Magento 2商店中创建自定义付款方式的步骤。接下来就可以启用付款方式,步骤如下:

1、如图所示,选择“YES”

2、启用付款方式后,可以在检出产品时将其显示在前端:

来源:idcspy.com/23947.html

本站声明:内容来源于网络,内容不代表本站立场,仅供阅读参考,文章版权归原作者“本公司cmy.cn”所有。如有侵权,请联系我们删除。

免责声明:本站发布的内容(图片、视频和文字)以原创、来自本网站内容采集于网络互联网转载等其它媒体和介绍为主,内容观点不代表本网站立场,如侵犯了原作者的版权,请告知一经查实,将立刻删除涉嫌侵权内容,联系我们56dr_com,同时欢迎投稿传递力量。

本文从“特网科技(56dr.com)”转载,原作者保留一切权利,若侵权请联系删除。

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: