aimes/module-checkout-designs 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

aimes/module-checkout-designs

Composer 安装命令:

composer require aimes/module-checkout-designs

包简介

Swap checkout layouts via system configuration, or conditions

README 文档

README

"Supported Magento Version" "Supported Adobe Commerce Version" "Supported Mage OS Version" "Latest Release"

  • Compatible with Magento Open Source and Adobe Commerce 2.3.x & 2.4.x
  • Compatible with Hyvä Themes using the Luma Checkout Fallback
  • Compatible with Mage OS

Features

This module provides the ability to change checkout page designs/layout similar to page specific selectable layouts.

The module currently provides the following functionality:

  • Provide a different checkout user experience per store
  • Provide a different checkout user experience per customer group
Example Config

Example Config

This in turn will allow you to do things such as, but not limited to, the following:

Please note: These are only examples of functionality that this module makes possible. This module itself does not provide any additional functionality and serves only as a base for other modules. For example usage, please see Aimes_CheckoutDesignsExample.

  • AB Testing any checkout changes
  • Something broken or users can't checkout with a specific design? Select a different design or the default Magento checkout so that users can still checkout until you can deploy your fixed code.
  • Collect different data per design to help determine any issues
    • Track the different drop-off points
    • Track conversion rates

Any feature requests and/or pull requests are welcomed!

Requirements

  • Magento Open Source or Adobe Commerce version 2.3.x or 2.4.x

Installation

Please install this module via Composer. This module is hosted on Packagist.

  • composer require aimes/module-checkout-designs
  • bin/magento module:enable Aimes_CheckoutDesigns
  • bin/magento setup:upgrade

Usage

Step 1: Define new checkout layout

di.xml

<virtualType name="Vendor\Module\Model\Checkout\Design\MyDesign"
             type="Aimes\CheckoutDesigns\Model\CheckoutDesign">
    <arguments>
        <argument name="code" xsi:type="string">my_design_code</argument>
        <argument name="name" xsi:type="string">My Design Name</argument>
        <argument name="layoutHandle" xsi:type="string">my_design_layout_handle</argument>
        <argument name="layoutProcessors" xsi:type="array">
            <item name="defaultProcessor" xsi:type="object">
                <!-- Object must implement \Magento\Checkout\Block\Checkout\LayoutProcessorInterface -->
            </item>
        </argument>
        <argument name="configProviders" xsi:type="array">
            <item name="defaultProvider" xsi:type="object">
                <!-- Object must implement \Magento\Checkout\Model\ConfigProviderInterface -->
            </item>
        </argument>
    </arguments>
</virtualType>

Explanation

  • Designs must implement \Aimes\CheckoutDesigns\Api\CheckoutDesignInterface
    • code is a unique string identifier for your design
    • name is a string to represnt the frontend / human friendly label
    • layoutHandle is a string to represent the layout handle that will be processed when the design is in use. The above would include my_design_layout_handle.xml
    • layoutProcessors is an array of objects that will only be processed when the associated design is utilised
      • Items must implement \Magento\Checkout\Block\Checkout\LayoutProcessorInterface
    • configProviders is an array of objects that will only be processed when the associated design is utilised
      • Items must implement \Magento\Checkout\Model\ConfigProviderInterface

Example code

For working code examples, please refer to Aimes_CheckoutDesignsExample. This package can also be installed.

Step 2: Add your design to the available options

di.xml

<type name="Aimes\CheckoutDesigns\Model\Config\Source\CheckoutDesigns">
    <arguments>
        <argument name="designs" xsi:type="array">
            <item name="my_design" xsi:type="object">
                Vendor\Module\Model\Checkout\Design\MyDesign
            </item>
        </argument>
    </arguments>
</type>

Step 3: Select design

Your design should now show up as an option in the system configuration below:

Sales -> Checkout -> Design / Layout -> Checkout Design

  • Select the default design
  • Select specific designs per customer groups

Licence

GPLv3 © Rob Aimes

aimes/module-checkout-designs 适用场景与选型建议

aimes/module-checkout-designs 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 12.66k 次下载、GitHub Stars 达 33, 最近一次更新时间为 2021 年 04 月 09 日, 在 PHP 生态内属于活跃度较高的组件。

我们在过去多个企业项目中使用过 aimes/module-checkout-designs 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 aimes/module-checkout-designs 我们能提供哪些服务?
定制开发 / 二次开发

基于 aimes/module-checkout-designs 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 12.66k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 33
  • 点击次数: 19
  • 依赖项目数: 1
  • 推荐数: 0

GitHub 信息

  • Stars: 33
  • Watchers: 4
  • Forks: 4
  • 开发语言: PHP

其他信息

  • 授权协议: GPL-3.0-or-later
  • 更新时间: 2021-04-09