baato / baato-magento2
此包最新版本(dev-master)没有可用的许可证信息。
将Baato.io地图集成到Magento 2店面结账流程中。
dev-master
2021-11-23 03:20 UTC
This package is auto-updated.
Last update: 2024-09-23 09:30:58 UTC
README
概述
此包是为将Baato.io地图集成到Magento 2结账页面而构建的。此模块背后的概念是在结账过程中将用户的纬度和经度存储在magento 2后端。
内容
安装
- 在magento项目根目录中创建
app/code/Baato/Baato
目录。 - 下载.zip文件并将其内容解压到您的
app/code/Baato/Baato
。 - 运行以下命令安装模块。
cd <MAGENTO_ROOT_DIRECTORY> && rm -rf generated/code && php bin/magento s:up && php bin/magento set:di:com
- 登录到magento 2管理员面板。转到
商店 > 设置 > 配置
。 - 您应该能在侧边栏看到
Baato.io
。 - 在
Baato.io > 一般 > 密钥 > Baato.io密钥
下,输入您网站的Baato.io API密钥并保存配置。
定制
样式定制
⚠️在自定义任何.less
文件后,请运行bin/magento setup:grade
并使用命令bin/magento cache:clean
清除缓存,否则自定义可能不可见。
前端样式定制
要自定义结账页面地图容器的样式,请考虑将自定义放在以下位置
view/frontend/web/css/maps.less
后端样式定制
要自定义结账页面地图容器的样式,请考虑将自定义放在以下位置
view/adminhtml/web/css/maps.less
JavaScript定制
前端JS定制
-
地图是通过
view/frontend/web/js/maps.js
在结账页面加载的。 -
地图容器的KnockoutJS模板是
view/frontend/web/template/maps.html
后端JS定制
- 订单查看页面的地图是通过
view/adminhtml/templates/order/shipping-address-map.phtml
渲染的。
PHP定制
- 前面提到的JS Magento 2 UI组件是通过
Plugins\Magento\Checkout\Block\Checkout\LayoutProcessor.php
加载到结账页面的。 - 您可以通过修改
$mapElementField
数组的sortOrder
键值来修改地图在结账页面内的位置。
$mapElementField = [ ... 'sortOrder' => 100 // Change this value by the scale of 10 to move up/down ...]
Plugins/Magento/Checkout/Block/Checkout/LayoutProcessor.php
文件通过依赖注入覆盖了现有的布局处理器文件。请参阅etc/di.xml
- 纬度和经度是通过
Plugins/Sales/Model/Order/SaveCustomAddressAttributes.php
保存到报价送货地址的。 - 在结账时,通过订阅
Observer/UpdateOrderAddress.php
中的订单创建事件,将报价送货地址转换为订单送货地址。
模板文件
前端模板定制
有关在结账页面渲染地图的模板,请参阅view/frontend/web/template/maps.html
。仅将baato API密钥放置在view/frontend/templates/map.phtml
文件中,供JavaScript使用。
后端模板定制
有关在订单查看页面渲染地图的模板,请参阅view/adminhtml/templates/order/shipping-address-map.phtml
。