Adobe Commerce 2.4.8发行说明

NOTE
Adobe Commerce版本可能包含向后不兼容的更改(BIC)。 要查看与向后不兼容的更改,请参阅BIC参考。 在BIC亮点中描述了严重的向后不兼容问题。 并非所有发行版本都引进了主要BIC。

高亮

Adobe Commerce 2.4.8增强了安全性,与PHP 8.4和MariaDB 11.4兼容,改进了GraphQL API,加速了迁移到由Edge Delivery提供支持的新Adobe Commerce店面,并修复了500多项质量问题并增强了现有功能。 升级到2.4.8可以确保您的平台安全、与最新的技术进步保持一致,并且在2028年4月之前一直受支持。

recommendation-more-help

采用建议

在计划升级到Adobe Commerce 2.4.8时,请考虑您的业务优先级、当前版本,并计划采用新的Adobe Commerce as a Cloud Service

  • 如果您计划在未来12-16个月内采用Adobe Commerce as a Cloud Service:立即应用最新的安全修补程序,并计划在迁移到Cloud Service的过程中进行升级。

  • 如果您不打算在未来12-16个月内采用Adobe Commerce as a Cloud Service,或者您打算在该时间范围内采用Adobe Commerce Optimizer:您的升级时间表取决于您当前的版本。

    • 版本2.4.4、2.4.5或2.4.6:立即应用最新的安全修补程序,并尽快开始升级到Adobe Commerce 2.4.8,对2.4.4的支持将于2026年4月终止,对2.4.5和2.4.6的支持将于2026年8月终止。

    • 版本2.4.7:立即应用最新的安全修补程序。 虽然我们鼓励您尽快升级以利用最新的增强功能,但您可以灵活选择与业务优先级相符的时间。 您的版本将继续受支持,直到2027年4月。

安全性

此版本中的以下安全增强功能改进了与最新安全最佳实践的兼容性:

NOTE
有关安全错误修复的最新信息,请参阅Adobe安全公告APSB25-26
设置

此版本包括以下安全设置增强功能:

  • Duo Security 2FA:此更改将更新Adobe Commerce中的Duo Security双重身份验证(2FA)实现,以使用最新的SDK (Web SDK v4)。 此升级使商家能够无缝过渡到使用Duo通用提示。 商家必须在管理员设置中更新其配置,以包含客户端ID和密码。
  • 加密密钥重新设计了管理加密密钥的设计,以提高可用性并消除以前的限制和错误。 新的CLI命令现在可用于更改密钥和重新加密某些系统配置、付款和自定义字段数据。 此版本不再支持在管理员UI中更改密钥。 必须使用CLI命令。 有关详细信息,请参阅加密密钥轮换疑难解答:CVE-2024-34102知识库文章。
  • 一次性密码(OTP)设置:需要此更新才能解决2.4.7中向后不兼容的更改导致的错误。OTP Window 字段的说明现在提供了设置的准确解释,默认值已从1更改为29
子资源完整性(SRI)
对2.4.7中引入的SRI机制进行了重构,以提高可靠性和性能。 SRI哈希现在直接存储在pub/static目录中并按区域(adminhtmlbasefrontend)组织,而不是存储在自定义缓存中,该自定义缓存可在缓存刷新操作期间清除。 此更改消除了在缓存刷新后重新部署静态内容的需要。

平台

此版本的以下平台升级确保Adobe Commerce保持稳定可靠的平台,随时准备满足现代商务环境的需求:

缓存
此版本包括对Valkey 8.x的支持。
数据库

根据我们的支持生命周期策略,Adobe Commerce现在与以下数据库技术的以下长期支持(LTS)版本兼容:

  • MariaDB 11.4 LTS _(在2029年之前受支持)_:早期版本(MariaDB 10.6)已于2026年停止使用,因此必须执行此升级,以保持系统的完整性和性能。 MariaDB 10.6仍受支持,但Adobe建议在升级到Adobe Commerce 2.4.8时升级到MariaDB 11.4。
  • MySQL 8.4 LTS _(2032年之前支持)_:以前的版本(MySQL 8.0)将于2026年终止生命周期,因此此升级对于维护系统完整性和性能至关重要。 MySQL 8.0仍受支持,但Adobe建议在升级到Adobe Commerce 2.4.8时升级到MySQL 8.4

此版本包括以下数据库增强功能:

  • MySQL排序规则:系统现在默认为使用MySQL的utf8mb4排序规则,确保与MySQL 8兼容,并防止将来弃用utf8mb3。 以前,系统默认使用utf8mb3排序规则,MySQL 8已弃用该排序规则。
  • MySQL外键fey限制: MySQL 8.4默认引入更严格的外键验证。 默认情况下,restrict_fk_on_non_standard_key设置现在为ON,这限制使用非唯一键或部分键作为外键。 从MySQL 8.0升级到MySQL 8.4的商家必须将此参数显式设置为OFF,或使用--skip-restrict-fk-on-non-standard-key服务器选项来保持与现有数据库结构的兼容性。 有关详细信息,请参阅 升级指南
消息队列

此版本添加了对RabbitMQ 4.x的支持。在升级到RabbitMQ 4之前,Adobe Commerce Cloud和本地客户必须从classic mirrored queues迁移到quorum queues。 此迁移是必需的,因为:

  • Classic mirrored queues RabbitMQ 4中不支持
  • Quorum queues 通过跨多个节点复制队列内容来保持高可用性
PHP

此版本包括以下PHP增强功能:

  • PHP 8.4:此版本为Adobe Commerce、捆绑扩展以及Adobe拥有的扩展、服务和工具添加了PHP 8.4兼容性。 仍支持PHP 8.3。 PHP 8.2仍然兼容,但仅用于升级目的。 PHP 8.4兼容性需要中断更改
  • PHP 8.1:此版本从所有Adobe Commerce项目库、依赖项、捆绑的扩展以及Adobe拥有的扩展、服务和工具中删除了PHP 8.1。
  • PHP 8.1:此版本删除了Adobe Commerce 2.4.8的PHP 8.1兼容性。在升级到Adobe Commerce 2.4.8之前,您必须升级到PHP 8.3。
  • PHP 8.2: PHP 8.2中的一个重要更改涉及将null传递到不可为空的内部函数参数的弃用。 此发行版本解决了核心平台组件中已弃用的PHP 8.1功能,并确保与PHP 8.2兼容。
  • PHPUnit 10:此版本解决了几个关键问题,增强了兼容性,并确保Adobe Commerce测试框架符合最新的行业标准。 Adobe建议所有Commerce Marketplace供应商和具有自定义设置的客户验证其单元测试和集成测试是否在PHPUnit 10(而不是9)上运行。
组件

以下第三方组件和依赖项已更新到最新稳定版本,以增强平台稳定性和性能:

  • 编辑器2.8.x
  • glob 11.0.0
  • grunt-contrib-connect 5.0.0
  • grunt-eslint 25.0.0
  • imagemin-svgo 11.0.1
  • jquery/bootstrap 5.3.3
  • jquery/jstree 3.3.17
  • jquery.tabs.js 5.3.2
  • jquery/validate 1.20.x
  • js-cookie/js-cookie 3.0.5
  • moment.js 2.30.1
  • monolog/monolog 3.x
  • monolog/Require.js 2.3.7
  • nginx 1.26
  • phpunit/phpunit 10.x
  • serve-static 1.16.2
  • TinyMCE 6.8.5
  • 下划线1.13.7
  • 正常4.4.0
  • 清漆7.6.x
  • wikimedia/less.php 5.x

已删除以下组件:

  • TinyMCE 5

所有Laminas依赖项都已升级到最新版本,但以下版本已替换为替代包或本机PHP功能:

  • laminas/laminas-file
  • laminas/laminas-mail
  • laminas/laminas-mime
  • 拉米纳斯/拉米纳斯 — 奥auth
Search

Adobe Commerce现在已针对OpenSearch 2.19进行了优化,并且不再与Elasticsearch兼容。 代码库中现在已弃用所有Elasticsearch 7和8模块和类。 Adobe强烈建议转为使用OpenSearch进行内部部署和云基础架构部署,以确保持续的支持和兼容性。 请参阅迁移到OpenSearch

  • Elasticsearch7和Elasticsearch8选项现在在管理员配置中标记为“(已弃用)”。
  • 当用户在管理员配置中选择Elasticsearch作为搜索引擎时,Commerce会显示一条通知,说明“”,Adobe不再支持此搜索引擎选项。 我们建议改用OpenSearch作为搜索引擎。“

性能

此版本包括以下性能增强:

索引器
现在,在安装Adobe Commerce的新版本或从以前的版本升级时,所有索引器的默认索引器模式为Update by Schedule。 新的默认设置可确保索引器处于建议的配置中,从而改进系统性能并减少潜在问题。
产品价格
在使用[`/V1/products/tier-prices`]() REST API端点时,系统现在允许更高效地批量更新层价格,而不会导致性能问题或站点无响应。 以前,使用此端点更新大量价格可能会导致性能问题和站点无响应。

质量

此版本包括以下质量增强功能:

库存
现在,系统运行时不再依赖于InventoryIndexer引入的Catalog中以前隐藏的依赖项,从而确保产品创建、显示模式切换、库存状态更改和其他相关功能按预期工作。 以前,这种隐藏的依赖关系会导致不一致的情况,因为不同的实体被同步,而索引器使用不同的实体。
订购
为了最大限度地减少混淆,订单详细信息页面中的Submit Comment按钮标签已更改为Update。

GraphQL

此版本包括以下GraphQL增强功能:

购物车和结账
  • 已将以下新字段添加到CartItemPrices类型以支持精确的定价显示和折扣计算:

    • original_item_price
    • original_row_total
    • row_total_including_catalog_discounts_only
  • 更新了GraphQL的结账流程,在订单总额为零时仅显示“免费”付款方式。 此增强功能可减少购物者的混淆,并确保更顺畅的购买体验。

  • 添加了对通过StoreConfig GraphQL查询检索条款和条件配置设置的支持。 可用的新配置: Stores > Settings > Configuration > Checkout > Checkout Options > Enable Terms and Conditions。 这些设置使前端应用程序能够通过结账页面中的存储视图动态启用和配置条款和条件。

  • 更新了updateCartItems突变,以返回包含错误详细信息而不是异常的成功响应。 增强了错误映射功能,提高了用户通知的清晰度。

  • 添加了新的InsufficientStockError类型以处理库存水平不足的情况。 已调整架构以支持新的错误类型,从而增强错误报告功能。

  • 优化消息传送以处理数量不足和不可用的通知。

  • 已将grand_total_excluding_tax字段添加到CartPrices类型,从而提供了明确的含税定价。

  • 已将not_available_message添加到CartItemInterface

  • 添加了GraphQL对检索购物车规则信息的支持。 引入了新商店配置来控制所有和应用购物车规则的公开,以及用于获取活动购物车规则的allCartRules查询和Cart.rules字段。

客户和客户组

此版本包括以下客户管理增强功能:

  • 改进了generateCustomerToken突变中的错误处理,为未确认的电子邮件提供特定消息。 支持更好的用户指导和错误解决。
  • 添加了一个用于重新发送电子邮件确认的新resendConfirmationEmail突变。
  • 添加了一个新的customerSegments查询以启用个性化功能。
  • 添加了customerGroup查询以返回来宾和客户的客户组相关信息。
  • 添加了用于管理客户组的新商店配置,引入了allCustomerGroups查询以检索所有可用客户组的列表,并公开了Customer.group字段以访问当前已登录客户的组信息。
  • 已在customer查询中添加了customer.addressesV2字段,为客户地址添加了分页。
订单

此版本包括以下用户订单管理增强功能:

  • 增强了错误消息传送功能,以包含可用的库存数量。 在订单更新期间为用户提供更清晰的库存水平洞察。
  • 已将新的date_of_first_order字段添加到CustomerOrders类型。
  • 扩展了OrderAddress类型以包含自定义属性,增强了订单详细信息的可见性。 支持在订单确认页面上显示附加信息。
  • 已将is_virtual字段添加到CustomerOrder类型,支持虚拟产品标识。 通过区分虚拟产品和物理产品来增强订单处理。
  • 添加了类似于CartItemPricesOrderItemPrices类型到OrderItemInterface,并添加了多个新的价格字段。
  • 改进了根据电子邮件匹配将来宾订单与客户帐户合并的API功能。 简化退货客户的订单管理。
  • 扩展了CustomerOrder类型以包括available_actions字段,以便更好地进行订单管理。 “available_actions”字段映射到枚举,列出可以对订单执行的操作。
  • 已将customer_info字段添加到CustomerOrder类型。 此字段需要OrderCustomerInfo类型,其中包含有关客户名称的详细信息。
  • 已将详细的错误代码添加到CancelOrderOutput类型。 改进了订单取消流程的错误处理和用户反馈。
  • 添加了一个新的confirmCancelOrder变异,以便取消来宾购物者的订单。
  • 更新了OrderStatusChangeDate解析器,以默认格式返回订单状态更改日期,无需进行额外的重新格式设置,从而确保响应的一致性。
  • 更新了order.availableActions字段以确保在商家禁用管理员中的重新排序功能时未返回REORDER操作。
  • 已更新guestOrderguestOrderByToken查询以使用lastname而不是postcode,因为有些国家/地区认为邮政编码是可选的。 因此,某些来宾用户在下订单期间获取令牌或使用令牌检索已下订单时遇到问题。
  • 更新了cancelOrder变异,使其仅对注册客户可访问。 添加了一个新的requestGuestOrderCancel变异,它需要顺序令牌(类似于guestOrderByToken输入)。
  • 添加了order_status_change_date字段以跟踪订单状态更改的日期。
  • 已将OrderCustomerInfo添加到CustomerOrder类型。
  • 添加了CustomerOrder.available_actions字段以显示订单可用的操作。
  • 映射的错误代码以及订单取消的相应错误消息。
  • 添加了基于created_at字段的订单历史记录筛选器,并公开了CustomerOrders类型的date_of_first_order
  • 已将is_virtual字段添加到CustomerOrder类型,类似于Cart类型。 这允许客户有条件地隐藏仅包含虚拟产品的订单的送货信息。
  • 更新了guestOrderguestOrderByToken查询响应,以包含与购物车摘要相关的缺失字段以进行订单确认。 已将OrderItemPrices类型以及original_priceoriginal_price_including_tax字段添加到OrderItemPricesCartItemPrices类型。 现在,“价格”字段包含详细的定价信息,允许订单确认页面显示更完整的购物车摘要,包括总数量、项目详细信息和折扣前价格。
  • 更新了API,以支持在电子邮件地址匹配时将来宾订单与客户帐户合并。 现在,在注册时或者如果找到具有相同电子邮件的现有帐户,来宾下单的订单会自动与相应的客户帐户关联。
  • 更新了CustomerOrder类型以包含应用于订单总计的商店积分和奖励积分。 现在,订单有效负荷会返回商店点数和奖励分数的标签和值,从而确保完整的成本汇总详细信息。
产品和目录
  • 添加了目录定价规则的存储配置,添加了用于检索所有可用目录规则的allCatalogRules查询,并公开了Product.rules字段以显示当前应用于产品的目录规则。
  • ProductInterface中添加了quantity字段以提供库存级别详细信息。 根据管理员设置,它会显示可用库存或空值。
  • 更正了捆绑产品的定价显示,以确保准确的价格和货币信息。
  • 已将grouped_product_imageconfigurable_product_image字段添加到StoreConfig类型。
礼品选项和礼品卡
  • 更新了GiftOptionsPricesOrderTotal类型,以包含礼品包装(按物料和订单)和打印卡片的price_excluding_taxprice_including_tax字段。 此增强功能可确保根据购物车和订单查询的存储配置设置准确显示税金。
  • 更新了storeConfig查询以包含printed_card_priceV2以返回价格对象而不是字符串。
  • 已将gift_wrapping_availablegift_wrapping_price字段添加到products查询。 gift_wrapping_price字段现在作为价格对象返回。
  • 已将gift_messagegift_wrapping字段添加到GiftCardCartItem类型;已更新逻辑以放弃虚拟产品的礼品包装。
  • 已更新customerOrders查询以正确处理gift_message字段。
  • 更新了customerOrders查询以包括applied_gift_cards字段,从而允许检索类似于applied_coupons的已申请礼品卡数据。
退货
  • 更新了RMA项输入的requestReturn变异,以解决返回属性相关查询和变异之间的不一致问题。
  • 更新了requestReturn变异,以支持来宾订单退货。
税费和定价
  • 更新了包含字段的StoreConfig类型,以匹配管理员配置中的税务显示设置。
  • 已将subtotal_excl_taxsubtotal_incl_tax字段添加到OrderTotal类型。 已将subtotal字段标记为已弃用。
装运和计费
  • CartAddressInterface类型的送货或帐单购物车地址中的通讯簿添加了标识符。
  • 已将same_as_billing字段添加到ShippingCartAddress类型,该字段指示装运地址和账单地址是否相同。
  • 更新了guestOrderguestOrderByToken查询以包括自定义地址属性,从而确保新帐户的完整地址信息。
安全性
  • recaptchaV3Config查询添加了theme字段。 此字段允许您指定用于呈现reCaptcha的主题名称,以确保价格和货币信息准确无误。
  • 通过确保使用过期客户令牌的请求现在返回401 Unauthorized响应,提高了安全性。

Braintree

此版本包括以下Braintree捆绑的扩展增强功能:

常规增强功能

此版本包括以下对Braintree扩展的一般增强功能:

  • 为了提供真正的快速支付体验,Braintree扩展现在包含了PayPal模式中的配送方式,允许客户用较少的点击次数结账。 系统会根据客户的PayPal帐户中保存的配送地址列出并计算配送选项。 以前,客户登陆审核页面并选择配送方式完成付款。 审核页面现在为可选页面,可允许商家启用/禁用此用户历程。 PayPal Express按钮位于PDP、迷你购物车、购物车和结帐顶部。
  • Braintree SDK现已发布一个新版本。 PHP SDK的版本是6.21.0。JavaScript SDK版本为3.112.0。为了将来与新特性和功能兼容,最新版本有一些必需的更改。
  • Braintree扩展中的常规代码优化。
  • 为了确定客户启动PayPal签出体验(PDP、购物车或签出)的页面,Braintree扩展现在将data-page-type属性传递到JavaScript SDK。 此属性用于呈现页面上的按钮。
  • 按照新的PayPal品牌指南,Braintree扩展现在将PayLater消息放置在PDP、迷你购物车和购物车上。 现在,报文传送的价格与总额更加接近。 现在,扩展还将PayLater消息显示为签出按钮的一部分,而不是单独显示。
  • 为了提升快速付款体验,Braintree扩展将运送方式直接集成到Google Pay模式中,使得客户只需点击较少即可完成结账。 系统会自动根据客户的Google支付帐户中保存的地址显示并计算运送选项。 以前,客户在完成其付款之前会被重定向到审查页面以选择配送方式。 现在,复查页面是可选的,这允许商家灵活地在结帐流程中启用/禁用此步骤。 Google Pay Express按钮位于迷你购物车、购物车和结帐顶部。
  • 已将当前的Apple Pay标记更新至最新版本。
  • 已将当前的Google Pay标记更新至最新版本。
  • 删除了Sofort和Giropay支付方法,因为它们不再受支持。
包跟踪
在发运PayPal订单时,Braintree扩展现在会将运营商和跟踪编号同时发送到商家和客户的PayPal帐户。

提供跟踪信息和项目级别的详细信息,可极大地改善客户体验,同时降低商家的运营成本。 客户可以轻松地登录到其PayPal帐户、查看订单并访问跟踪链接。 商户将受益于自动解决“未收到商品”的PayPal争议、更快获取支付中的资金和争议保留、实时跟踪更新、商品级争议(而不是整个订单的争议)以及增强商户风险配置文件。

行项目

此版本包括以下对行项目的增强功能:

  • 应用支付 :客户使用Apple Pay Express结账时,Braintree扩展现在会在Apple Pay模式中显示购物车行项目。 通过单击工具提示(?) 在价格旁边,客户可以查看单个购物车项目、折扣、配送和税务详细信息,从而无需退出模式确认其项目。
  • Google Pay :客户使用Google Pay Express结账时,Braintree扩展现在直接在Google Pay模式中显示购物车行项目。 通过单击工具提示(?) 在价格旁边,客户可以查看各个购物车项目、折扣、配送和税务详细信息,而无需退出模式验证其项目。

修复了v2.4.8中的问题

我们已在Adobe Commerce 2.4.8核心代码中修复了582个问题。 此版本中包含的已修复问题的子集如下所述。

API

  • AC-10042: /V1/transactions REST API在parent_txn_id = txn_id时返回错误

    • 修复注释:系统现在可以正确处理父交易ID与交易ID相同的父概念交易和子概念交易,从而防止在查询/V1/transactions REST API端点时发生无限循环。 以前,由于超出最大执行时间,此方案会导致致命错误。
    • GitHub代码贡献https://github.com/magento/magento2/commit/1bafc571
  • AC-11878: 2.4.7中的[Graphql]类型问题

  • AC-3223:类别url_key中的特殊字符(通过REST API创建时)

  • ACP2E-2703:显示来自其他网站订单的REST API。

    • 修复注释:系统现在支持REST API管理员令牌和Magento_Sales端点的范围授权访问,确保REST API仅显示管理员有权访问的订单。 以前,REST API会显示所有网站的订单,而不管管理员用户分配的网站是什么。
  • ACP2E-2755:启用2FA Duo后rest api出现问题

  • ACP2E-2927: [REST API]:为可配置产品添加配置后,在存储视图中使用默认值不会保持选中状态

    • 修复注释:通过确保非默认存储的可自定义选项具有正确的数据库条目,该问题已得到修复。 由于数据库条目不准确,因此以前在“管理员>目录>产品编辑>可自定义选项”部分中针对自定义商店的复选框处于未选中状态,即使自定义商店的选项标题与默认商店的标题保持相同也是如此。
    • GitHub代码贡献https://github.com/magento/magento2/commit/3056e9cb
  • ACP2E-2969:使用Oauth1时,REST API无法在SKU中使用斜杠(/)发出请求

    • 修复注释:在修复之前,您无法成功调用其SKU中具有“/”的产品API。 现在,即使其SKU中存在正斜杠,您仍可以成功发出API GET请求以获取产品详细信息。
    • GitHub代码贡献https://github.com/magento/magento2/commit/b21e5d91
  • ACP2E-3079:如果启用“validateDefaultAddress”,则通过REST API更新客户地址时失败

  • ACP2E-3091: [Cloud]在层价格Api中创建重复的网站组价格客户组。

    • 修复注释:现在,层价格重置Api不允许创建重复的网站组价格客户组。
      以前,可以在层价格Api中创建重复的网站组价格客户组,以免在产品保存期间通过管理员验证。
    • GitHub代码贡献https://github.com/magento/magento2/commit/148c3ead
  • ACP2E-3130:无法通过REST API添加具有状态的订单注释

    • 修复注释:通过允许更改顺序状态(如果该状态仅来自当前状态),该问题已得到解决。 以前,它不会遵循订单状态并阻止任何订单状态中的更改,即使订单状态来自同一状态也是如此。
    • GitHub代码贡献https://github.com/magento/magento2/commit/93d50f8d
  • ACP2E-3236:有效负载中缺少SKU时,异步操作失败

    • 修复注释:如果有效负载中缺少sku,则异步和同步操作以前由于产品保存错误而失败。 修复后,异步和同步产品保存rest api操作失败,并显示相关的异常消息。
    • GitHub代码贡献https://github.com/magento/magento2/commit/66dea0de
  • ACP2E-3376: [CLOUD]无法使用REST API更新基价(“catalog_product_entity_decimal”中的“value_id”值未正确递增。)

    • 修复说明:在此修复之前,调用rest api /rest/default/V1/products/base-prices时,增量ID错误地增加,使值之间出现间隙。 修复后,增量ID将按预期递增。 此外, value_id字段范围也增加了。
    • GitHub代码贡献https://github.com/magento/magento2/commit/d50f6b5d
  • ACP2E-3460:订单项在API POST V1/order/:orderId/refall的贷项通知单电子邮件中不可见

    • 修复注释:以前,在本次修复之前,当客户通过通知send_email的API请求创建贷项通知单时,它不包含产品详细信息网格。 进行此修复后,客户发送了贷项通知单API请求,并将发现电子邮件中显示了产品项目详细信息。
    • GitHub代码贡献https://github.com/magento/magento2/commit/3f12d152
  • ACP2E-3486:未对产品RestAPI的日期和时间属性设置默认值

API、购物车和结账

API, GraphQL

  • ACP2E-3348:没有可用于订阅客户奖励点更新的graphQl
    • 修复注释:在此修复之前,无法通过GraphQL突变和Rest API调用更新客户属性reward_warning_notification。 现在可以像更新客户属性reward_update_notification一样进行更新。

API、GraphQL、税费

  • AC-12060:仅提供邮政编码时,Luma (Rest API)和Graphql都不计算税额。
    • 修复注释:现在,系统仅在提供邮政编码时正确计算税额,从而确保Luma (Rest API)和GraphQL的准确纳税估算。 以前,只提供邮政编码时才会计算运费估计数,而不包括税款。

帐户

帐户、API、GraphQL

  • ACP2E-3246:客户API — 成功登录后无法重置为0的登录失败数

帐户、管理员UI、B2B

  • ACP2E-3038:受限管理员用户无法始终查看自定义共享目录

    • 修复注释:受限管理员用户现在可以始终查看和管理客户以及为其分配产品的所有共享目录,前提是他们有权访问特定商店。 以前,具有特定商店访问权限的受限管理员用户无法始终查看分配给产品的所有共享目录,或者无法查看客户,从而导致系统中出现不一致的情况。
    • GitHub代码贡献https://github.com/magento/magento2/commit/7377de59

帐户、购物车和结帐

管理员UI

  • AC-10705: [问题]为“重新加载数据”数据按钮添加权限检查

  • AC-11427: [问题]营销规则中属性的标签不一致

  • AC-11588:在导入具有替换行为的产品时,数据验证成功且存在导入按钮

    • 修复注释:系统现在可以正确验证数据,并在产品导入过程中使用“替换”行为隐藏“导入”按钮,以防止任何意外的数据替换。 以前,系统会错误地验证数据并显示“导入”按钮,从而导致潜在的数据不一致。
    • GitHub代码贡献https://github.com/magento/magento2/commit/0574ac23
  • AC-12167: [错误] Magento 2.4.7不允许使用大写字母文件扩展名的产品照片。

  • AC-12319:具有选择操作的网格中的隐藏下拉列表(例如“内容”>“元素”>“页面”)

  • AC-13131: [问题]修复警告:未定义数组键“筛选器”

  • AC-13529:由于Validate.php文件中的代码更改,产品导入带有特殊字符的csv文件失败

    • 修复注释:系统现在可以正确验证和导入包含特殊字符的产品CSV文件,从而允许成功传输数据。 以前,尝试导入包含特殊字符的产品CSV文件会导致错误,从而阻止导入过程。
    • GitHub代码贡献https://github.com/magento/magento2/commit/6cfb9b6b
  • AC-13767:当“密码重置请求的最大数量”设置为大于0时,例如: 3 ,“超过限制错误消息”会在达到限制之前发送,即从第二次发送

  • AC-13768:虽然“密码重置请求的最大数量”设置为0(禁用),但“从第2次发送超过限制的错误消息”

  • AC-13850:必填电话号码字段没有红色星号

  • AC-14300:在“管理员”中,我们尝试重新排序提交订单按钮不可点击。 (间歇性)

  • AC-6975: [问题]将默认索引器模式设置为“计划”

  • AC-7700: [问题]在mview取消订阅时删除索引器更改日志表

    • 修复注释:当索引从“按计划更新”切换为“保存时更新”时,系统现在会自动删除未使用的changelog表,并将索引标记为无效,以确保不会丢失任何条目。 以前,将索引切换为“保存时更新”会在系统中保留未使用的changelog表,并将所有更改的索引标记为“有效”。
    • GitHub问题https://github.com/magento/magento2/issues/29789
    • GitHub代码贡献https://github.com/magento/magento2/pull/25859
  • AC-7962:在手机视图中结帐付款时,没有指向送货的链接

    • 修复注释:系统现在可以确保在移动视图中的页面顶部始终显示签出标题/链接“送货”和“审核和付款”,从而使用户能够轻松地在步骤之间导航并进行必要的更正。 以前,这些标题/链接在移动视图中隐藏,使用户难以了解其当前步骤或返回之前的步骤。
    • GitHub问题https://github.com/magento/magento2/issues/36856
    • GitHub代码贡献https://github.com/magento/magento2/pull/36982
  • AC-8109:客户订单查询装运注释created_at在+0时区中返回,不在商店配置的时区中

  • AC-9843: i18n:collect-phrases破坏翻译完整性

    • 修复注释bin/magento i18n:collect-phrases -o命令现在可以从JavaScript和.phtml文件中正确收集和添加新短语,确保翻译文件能准确反映翻译。 以前,系统无法在翻译文件中包含来自JavaScript文件的多行翻译短语以及来自.phtml文件的短语,从而导致翻译不完整或不正确。
    • GitHub代码贡献https://github.com/magento/magento2/commit/0c53bbf7
  • ACP2E-2687:访问动态块的权限问题

    • 修复注释:以前,对于受限管理员,添加新的动态块会引发错误。 实施此修复后,受限制的管理员可以成功添加动态块,并在没有任何错误的情况下编辑块
  • ACP2E-2787:存储视图名称中的撇号已替换为'

  • ACP2E-2847: Favicon上传无法验证.ico文件

  • ACP2E-2957: PageBuilder中的图库显示的是旧的图像缩略图,而不是新上传的图像

  • ACP2E-2978:由角色范围不同的管理员用户保存产品将覆盖/删除产品中现有的相关产品信息

    • 修复注释:以前,在修复之前,当辅助管理员用户单击“保存”按钮时,相关产品会重置并变为空,而不会更改相关产品。 进行此修复后,辅助管理员用户单击“保存”按钮,产品未重置且保存成功。
    • GitHub代码贡献https://github.com/magento/magento2/commit/3056e9cb
  • ACP2E-3033:无法导出200个以上的订单

    • 修复注释:通过将GET中的HTTP请求更改为POST,已忽略先前提交的选定ID的请求大小的服务器限制,以便修复此问题。 以前,由于GET请求大小的服务器限制,遇到问题。
    • GitHub代码贡献https://github.com/magento/magento2/commit/93d50f8d
  • ACP2E-3037:签出页验证消息不正确。

    • 修复注释:如果任何必填字段留空(如“地址”),则服务器端验证将不会显示消息。 客户端验证将确保显示必填字段错误通知,说明“这是必填字段”。 以前,如果任何必填字段留空,除了客户端验证消息之外,还会显示“地址为必填项”消息。
    • GitHub代码贡献https://github.com/magento/magento2/commit/9af794a4
  • ACP2E-3125:管理员用户的密码重置模板问题

    • 修复注释:问题已通过使用正确的密钥得到解决,该密钥现在包含电子邮件模板中的管理员用户名并正确填写主题。 以前,问题源自正在使用的过时键。
    • GitHub代码贡献https://github.com/magento/magento2/commit/93d50f8d
  • ACP2E-3149:客户区段URL中有双斜杠

  • ACP2E-3171: COD不可用于允许的特定国家/地区

  • ACP2E-3178:无法更新自定义创建的订单状态

  • ACP2E-3294:送货地址状态不是自动更新

    • 修复说明:在修复之前,送货地址区域(或区域ID)与地址帐单信息不同步。 现在,当帐单地址信息更改时,送货地址区域和区域ID都会正确更新。
    • GitHub代码贡献https://github.com/magento/magento2/commit/581b7ef1
  • ACP2E-3364:“重置”按钮对添加/编辑管理员用户不起作用

    • 修复注释:以前,在“添加/编辑管理员用户”页面上,“重置”按钮不起作用。 现在,在“管理员”面板中“系统” — >“权限” — >“所有用户”下,“重置”按钮将在“添加/编辑管理员用户”页面上正常工作。
    • GitHub代码贡献https://github.com/magento/magento2/commit/5184c067
  • ACP2E-3373: Magento管理员URL路由错误检测和CORS错误

  • ACP2E-3392:“购物车中允许的最大数量”的验证损坏

    • 修复注释:以前,当我们将Maximum Qty Allowed in Shopping Cart设置为空时,它不会引发任何异常,尽管此处不接受空值。 进行此修复后,输入空字符串将会引发异常,并且不允许保存产品。
    • GitHub代码贡献https://github.com/magento/magento2/commit/d50f6b5d
  • ACP2E-3408:[Pagebuilder预览UI问题]页面生成器列中的按钮未正确对齐

  • ACP2E-3431:未导出订购的产品报表。 而是404错误。

  • ACP2E-3457:在生产模式下启用Js缩小后,控制台中出现TinyMCE JS错误

    • 修复注释:以前,在“管理”面板的生产模式下启用JavaScript缩小功能会导致浏览器控制台中出现与TinyMCE 6相关的JavaScript错误,从而影响功能和用户体验。 现在,此问题已得到解决,从而确保TinyMCE 6平稳运行,不会生成任何错误,即使启用了JS缩小也是如此。
    • GitHub代码贡献https://github.com/magento/magento2/commit/56463d5e
  • ACP2E-3459:请求进行其他更改以完全完成ACP2E-3375修复

  • ACP2E-3503:自动启用新ACL权限

  • ACP2E-3509:管理员操作日志用户报告未显示admin_user_delete的详细信息

  • ACP2E-3536:从管理员下订单时未应用配送条件的购物车规则

  • ACP2E-3559: [FRESH]十六进制代码未在样本中正确更新

管理员UI,B2B

  • AC-13628: B2B登录作为客户标题仍具有Magento品牌

    • 修复说明:较早的店面标题显示“您现在作为<store name>上的<customer name>连接”并带有Magento品牌。 现已修复,并且标题会显示为ADOBE品牌。
    • GitHub代码贡献https://github.com/magento/magento2/commit/96dec499

管理员UI,目录

  • ACP2E-2708:无法作为受限管理员用户更改允许网站中类别产品的位置
    • 修复注释:允许受限管理员用户在受限网站下分配的根类别下所包含的类别下添加和排序产品。

管理员UI、支付/支付方式、订单

  • AC-13520: PayPal智能按钮排序后,交易授权未显示在“交易”选项卡中

    • 修复注释:使用PayPal智能按钮下订单后,系统现在会在“交易”选项卡中正确显示交易授权。 以前,单击“授权”按钮后,授权交易未显示在Transaction选项卡中,并且未创建“授权”类型的新交易。
    • GitHub代码贡献https://github.com/magento/magento2/commit/6cfb9b6b

管理员UI,性能

  • ACP2E-3169:更新到2.4.5-p8后,从管理员创建订单时出现500错误

管理员UI,配送

  • ACP2E-2519:优惠券代码计数不会在 如果订单是多次发运的,则“管理优惠券代码”选项卡中的“已用时间”列。

    • 修复注释:以前,在多次发运下订单时,在“管理优惠券代码”选项卡的“使用时间”列中,优惠券代码计数不会更新。 现在,正确计数会同时显示在“使用时间”中,以反映多次配送的所需值。
    • GitHub代码贡献https://github.com/magento/magento2/commit/4745100c

管理UI、暂存和预览

  • ACP2E-3424: [Cloud]删除缺少映像的模板导致pub/media被删除

Analytics/报表

  • AC-9922: Google Analytics CSP错误https://region1.analytics.google.com

  • ACP2E-2570:高级报告无法正常工作

    • 修复注释:系统现在支持通过以10,000个批次加载和写入报表,为超大型数据集生成高级报表数据文件。 以前,高级报告模块无法为超大型数据集生成数据文件,导致在执行analytics_collect_data cron作业期间出现“MySQL服务器已消失”错误。
    • GitHub代码贡献https://github.com/magento/magento2/commit/a12063bd
  • ACP2E-3080:管理员订购的产品报告日期范围可见性问题。

  • ACP2E-3096:不正确的CURL标头导致newrelic:create:deploy-marker无法正常工作

  • ACP2E-3146: GTM在dataLayer中缺少具有自定义选项的可配置产品的addToCart事件

    • 修复注释:以前,没有为可配置产品触发addToCart事件。 现在,事件已正确添加到GTM dataLayer变量中。
  • ACP2E-3183: NewRelic浏览器监视内联JS脚本导致CSP错误

    • 修复注释:应用程序现在插入NewRelic浏览器监视脚本,而不是APM代理,以符合CSP(内容安全策略)。 以前,由APM代理插入的NewRelic浏览器监控脚本与CSP不兼容,并导致脚本无法执行。
    • GitHub代码贡献https://github.com/magento/magento2/commit/66dea0de
  • ACP2E-3189:对sales_bestsellers_aggregated_daily表的INSERT查询在销售订单量大的项目上变得缓慢

  • ACP2E-3276:订单报表显示错误的货币符号

    • 修复注释:订单报表中订单金额的货币符号错误地取自currency/options/base。 现已更正为使用“货币”/“选项”/“默认”报表,以便进行准确的报告。
    • GitHub代码贡献https://github.com/magento/magento2/commit/fd5cf3af
  • ACP2E-3302: [Cloud]优惠券使用情况报告中的计算不正确

    • 固定注释:通过将“折扣税补偿金额”和“装运折扣税补偿金额”合并在一起,现在可以准确计算优惠券报表网格中的销售总额。 以前,计算中缺少这些金额,导致销售总额与销售订单数据之间存在差异。
    • GitHub代码贡献https://github.com/magento/magento2/commit/d75cff27
  • ACP2E-3339:共享“<project_id>/var/tmp”时出现问题

    • 修复注释: Analytics DataExport临时文件将使用sys tmp目录,该目录更适合频繁访问和更改。 为了避免在同一服务器上运行多个实例时发生冲突,更新了tmp路径以使用实例的唯一id
    • GitHub代码贡献https://github.com/magento/magento2/commit/a4cf5e62

Analytics/报表,B2B

  • ACP2E-2300: B2B - Sitemap包括未分配给共享目录的产品/类别

Analytics/报表、云

  • ACP2E-3067: Magento放弃大部分New Relic cron交易#34108

  • ACP2E-3187: NR中的量度可能对后台事务产生误导 — ACP2E-3067的跟进

B2B

  • AC-13501: 2.4.8-beta102 Package Enterprise Edition失败,出现应用程序异常

  • ACP2E-2139:执行部分索引时,分配给共享目录的产品未反映在前端

  • ACP2E-2873:“我的报价”中移动版和桌面版的[Cloud]价格显示不同

    • 固定注释:当目录总价部分已用时,不需要的包括税行不再显示在可转让报价中。
  • ACP2E-3044:“我的订单”部分上有不必要的边框

    • 修复注释:以前创建了一个附加容器(订单引用),该容器应用了附加的CSS类,这会导致“我的订单”部分中的订单编号下方出现不必要的边框行,而现在该订单编号不可见。
    • GitHub代码贡献https://github.com/magento/magento2/commit/9af794a4
  • ACP2E-3247: sales_clean_quotes cron会从尚未批准的采购订单中删除报价

  • ACP2E-3465:下单按钮在采购订单详细信息中消失

    • 修复注释:修复了在产品变体指定卡中的最小数量时,为批准的采购订单隐藏“下订单”按钮的问题
  • ACP2E-3474: [CLOUD]没有ID = 0且带有b2b模块的此类实体

    • 修复注释:启用共享目录功能后,登录用户能够将产品添加到购物车。
      之前将产品添加到购物车会导致“无ID = 0的此类实体”错误
  • ACP2E-3562:从申请列表批量添加时,未显示库存产品的错误消息

    • 修复注释:在修复之前,无论未能添加到购物车的产品数量如何,都会显示成功消息。 现在,将为成功添加到购物车的产品和失败的产品显示单独的消息。
  • ACP2E-3628:计划的更新之后的SKU更新问题,导致产品权限不正确(–2拒绝)

    • 修复注释:使用过去的计划更新修改产品的SKU不会再导致有权查看产品的共享目录客户无法访问该产品。

B2B,目录

  • ACP2E-2860:使用NoDDL和类别权限时重新索引期间可见的产品/类别
    • 修复注释:在执行目录权限索引时,避免在店面受限制的类别及其内容上显示。

B2B,框架

  • AC-9607:筛选公司网格,然后尝试网格CSV导出将失败并引发异常

    • 修复注释:系统现在允许成功CSV导出管理面板中的公司网格数据,即使应用了“未付余额”和“公司类型”等过滤器也是如此。 以前,应用某些过滤器并尝试导出网格数据会导致失败并引发异常。
    • GitHub代码贡献https://github.com/magento/magento2/commit/44cef3a9

B2B,GraphQL

  • ACP2E-3391: [Cloud]通过graphql调用创建公司时无法设置custom_attributes
    • 修复注释:修复后,可以使用graphql请求在公司创建期间为公司管理员设置“custom_attributes”属性。

Braintree

  • AC-14293: Admin Express签出按钮已禁用。
  • BUNDLE-3367:通过LPM付费
    • 修复说明:系统现在会在首次加载时正确呈现本地支付方式(LPM),即使登录客户的送货地址和帐单地址不匹配也是如此,从而确保结账过程顺利进行。 以前,客户的送货地址和账单地址不匹配会导致LPM无法呈现,进而在结账期间导致潜在中断。
  • BUNDLE-3368:可使用Virtual作为子产品进行配置
    • 修复注释:系统现在允许对具有虚拟子产品的可配置产品使用快速付款方法,以确保顺利的结账过程。 以前,当将带有虚拟子产品的可配置产品添加到购物车时,快速付款方法不可用。
  • BUNDLE-3369: CVV验证失败错误
  • BUNDLE-3370:通过帐户区域进行保险存储问题247
    • 修复注释:系统现在允许客户跨多个网站保存新卡或PayPal帐户信息,而不会遇到授权错误。 以前,客户无法跨不同网站保存新的支付方式,并收到授权错误消息。
  • BUNDLE-3371:从其他国家发送到地址
    • 修复注释:系统现在允许处理从其他国家发往某个地址的交易记录,而不会出错,从而确保结账过程顺利进行。 以前,尝试从其他国家/地区发送地址会导致控制台错误,尽管前端没有明显错误。
  • BUNDLE-3372: Credit Card - Teardown函数
    • 修复注释:现在,当客户从付款页导航回送货页时,系统会正确处理Braintree PayPal组件的拆卸,从而防止任何错误并确保PayPal Express按钮正确呈现。 以前,在尝试拆卸Braintree PayPal组件时,从付款页面导航回送货页面有时会导致错误。
  • BUNDLE-3373: PayPal Express的配送回拨
    • 修复说明:系统现在可在PayPal Express模式中正确显示可用的配送方式,允许客户在继续查看页面或完成交易之前选择其首选配送方式。 以前,在PayPal Express模式中无法选择配送方式,这要求客户在完成交易之前,在单独的审核页面上选择配送方式。

捆绑

  • AC-10826:店面包复选框验证错误消息计数大于1

    • 修复注释:现在,单击“添加到购物车”按钮时,系统只显示一条验证错误消息,而没有为捆绑产品选择任何复选框选项。 以前,系统会为每个未选复选框显示多个验证错误消息。
    • GitHub代码贡献https://github.com/magento/magento2/commit/3ea26621
  • AC-13321:在某些与顺序相关的测试用例中引发了Magento异常

    • 修复注释:系统现在可以正确处理各种测试用例中的“sendGuestPaymentInformation”步骤,从而防止引发Magento异常。 以前,这些例外是由于空的支付方法而发生的,导致在几种测试情况下发生故障。

购物车和结帐

  • AC-10660:在比较产品页面中将产品添加到购物车时,未正确处理异常

  • AC-10698: GTag未发送交易价格和总计。

  • AC-11641: [问题] [签出] Depend指令已在失败的付款电子邮件模板中更新

  • AC-11717: Magento 2在现有客户的签出内登录,在Firefox浏览器中引发控制台错误

  • AC-11876:[问题] 2.4.7中的销售规则回归

  • AC-11914: [问题]销售规则CartFixed计算:折扣金额不正确

  • AC-11993: [问题]更改邮政编码后,加载程序将阻止配送方式,配送费率验证规则

    • 修复注释:系统现在可以正确处理自定义配送方式,而不使用运费验证规则,从而确保在结帐期间在配送地址中更改邮编后,加载程序不会阻止配送方式。 以前,在结帐期间更改装运地址中的邮政编码会导致加载程序阻止装运方法,并且在使用没有装运费率验证规则的自定义装运方法时不会消失。
    • GitHub问题https://github.com/magento/magento2/issues/38742
    • GitHub代码贡献https://github.com/magento/magento2/commit/1bafc571
  • AC-12170:优惠券代码功能在Magento 2.4.7上的签出页面中无法正常工作

  • AC-12479:“条款和条件”复选框不允许店面上的HTML

    • 修复说明:系统现在支持店面的“条款和条件”复选框文本中的HTML格式,从而增强自定义和可读性。 以前,复选框文本以纯文本格式显示,忽略使用的任何HTML标记。
    • GitHub代码贡献https://github.com/magento/magento2/commit/6cfb9b6b
  • AC-12541:为已登录用户创建的购物车价格规则错误地应用于未登录用户

  • AC-13302: [问题] [功能]通过阻止……

  • AC-13797:礼品注册产品显示不正确

  • AC-13841:礼品注册产品显示不正确

  • AC-8103:地址呈现器中的翻译VAT

  • ACP2E-2055:具有相同报价ID的重复订单,时间差很小

  • ACP2E-2470:在结帐步骤中清理了永久购物车

  • ACP2E-2518:重新排序将未分配的产品添加到购物车

    • 修复注释:以前,对于不同的商店,可以从其他商店对产品重新排序。 仅应用此修复后,在启用客户帐户共享时,可对同一范围产品重新排序
    • GitHub代码贡献https://github.com/magento/magento2/commit/f89a447e
  • ACP2E-2620:在admin中,从右侧选择商品和“移至购物车”时,左侧的“购物车”未更新

    • 修复注释:选择项目时,左侧的“购物车”将更新,而管理员右侧的“移至购物车”将更新。 以前,此功能不起作用,因为转换后的购物车项目不会从会话中清空。
    • GitHub代码贡献https://github.com/magento/magento2/commit/39d54c2d
  • ACP2E-2646: [Cloud]销售规则未应用于第一笔多发订单

  • ACP2E-2664: [Cloud]将相同产品添加到购物车的生产并行请求在购物车REST API中产生了两个不同的项目

    • 修复注释:系统现在可正确处理多个并行请求,以将同一产品添加到购物车中,并添加到单个行项目,从而防止为同一SKU创建单独的行项目。 以前,并行请求通过REST API将同一产品添加到购物车会导致同一SKU出现多个行项目。
    • GitHub代码贡献https://github.com/magento/magento2/commit/f89a447e
  • ACP2E-2676:从礼品注册表Magento 2.4.4 Enterprise/Commerce订购时出现问题

    • 修复注释:已解决无法从礼品注册表中成功购买产品的问题,从而能够下订单并正确更新礼品注册表。 以前,尝试从礼品注册处下订单时出现错误,导致购买无法完成。
    • GitHub问题https://github.com/magento/magento2/issues/35432
  • ACP2E-2704:获取无法发送Cookie。 尝试重新排序时“图像消息”的大小

  • ACP2E-2798:结帐时未选择默认送货地址

  • ACP2E-2897:[CLOUD] graphql addProductsToCart api问题,带有自定义选项

  • ACP2E-2917:更改商店视图时[云]相关产品规则不起作用

    • 修复注释:通过确认在购物车页面上成功接收自定义属性值,该问题已得到修复。 以前,在店面购物车页面上的商店之间切换时,无法正确获取购物车。
  • ACP2E-2923:签出为新客户时,向帐户添加了多个地址

  • ACP2E-3004:通过访客订单重新订购客户订单导致购物车为空

    • 修复注释:以前,通过“订单和退货”页面重新订购时,客户被重定向到登录页面。 应用此修复后,进行重新订购时,注册的客户会被正确重定向到“查看购物车”页面。 该流的工作方式与访客客户相同。
    • GitHub代码贡献https://github.com/magento/magento2/commit/6a185204
  • ACP2E-3025:角色资源有限的管理员用户无法查看购物车

    • 修复注释:以前,受限制的管理员无法从相关网站的管理员面板中看到放弃的购物车。 应用此修复后,受限管理员可以从管理员面板中看到放弃的购物车。
    • GitHub代码贡献https://github.com/magento/magento2/commit/d1f7dc95
  • ACP2E-3176: [云]快速订购大量SKU性能

    • 修复注释:当购物车价格规则条件中使用的属性对于所有产品均不存在,并且启用了MAP(最低广告价格)功能时,结账性能已得到改进。
    • GitHub代码贡献https://github.com/magento/magento2/commit/66dea0de
  • ACP2E-3211:购物车中重复的项目

    • 修复注释:系统现在可正确处理多个并行请求,以将同一产品添加到购物车中,并添加到单个行项目,从而防止为同一SKU创建单独的行项目。 以前,并行请求将同一产品添加到店面的购物车会导致同一SKU出现多个行项目。
    • GitHub代码贡献https://github.com/magento/magento2/commit/66dea0de
  • ACP2E-3296:将结账订单电子邮件确认发送给以名字/姓氏输入的电子邮件

  • ACP2E-3402:签出送货地址表单更新为错误的地址

    • 修复注释:现在已将shippingAddressFromData保存到每个网站的本地存储中。 以前,如果在URL中使用商店代码,并且在同一访客会话期间从多个网站启动了结账,则来自错误网站的地址可能会在结账期间自动填充到送货地址表单中。
    • GitHub代码贡献https://github.com/magento/magento2/commit/078c387e
  • ACP2E-3405:启用地址搜索时,[CLOUD]签出未保留所选的帐单地址

    • 修复注释:启用地址搜索后,结帐付款页面将保留所选的帐单地址。 以前,如果“客户地址数限制”配置为1,并且客户有多个地址,则在重新加载页面后,选定的账单地址将消失。
  • ACP2E-3407:礼品卡产品 | 购物车合并正在合并礼品卡

  • ACP2E-3415:注销时未遵循购物车持久性

  • ACP2E-3488:现有报价数据未更新/不可见,而是在trigger_recollect = 1时创建新的报价记录

  • ACP2E-3495:购买礼品注册表项时,客户看到其注册表中没有的项目

    • 修复注释:礼品注册表更新不再包含不属于礼品注册表的项目。
  • ACP2E-3510: [云]问题与“全部删除”确认弹出窗口在未确认的情况下删除购物车项目

    • 修复注释:现在,对于需要注意的产品,单击“全部删除”按钮会提示弹出确认窗口,以确保仅在确认后删除项目。 以前,会立即删除项目而不进行任何确认
  • ACP2E-3618: [CLOUD]重新排序按钮功能

    • 修复注释:从管理员区域对订单重新排序后,即使原始订单中的某些产品不再有库存,现在也会将带库存的产品添加到报价中。 在修复之前,如果原始订单中没有库存的产品,则不会向新报价添加任何产品。
    • GitHub代码贡献https://github.com/magento/magento2/commit/a52ff98f
  • ACP2E-3622:搜索存储无法按邮政编码工作

购物车和结帐、结帐/单页结帐

  • AC-9386: [随机错误]电子邮件字段未呈现,或需要很长时间才能在结帐送货或付款页面中显示

购物车和结帐、订购

  • ACP2E-3097:从管理员下订单时,具有多个日期字段无效的可自定义选项的产品日期选取器

    • 修复注释:在管理订单创建过程中配置具有多个可自定义日期选项的产品时,系统现在可以正确显示所有日期字段的日期选取器。 以前,仅为第一个日期字段显示日期选取器,而其余字段没有日期选取器。
    • GitHub代码贡献https://github.com/magento/magento2/commit/b21e5d91

购物车和结帐、送货

目录

  • AC-10910: cron_schedule数据库表的清理未清理非现有作业

  • AC-10953:未从可配置产品中删除层价格

  • AC-11804:非默认存储审阅中的类别描述WYSIWYG为空

  • AC-11970:无法通过选中自定义选项的一个复选框来重新排序可配置产品

  • AC-12076: [问题]修复分层导航上筛选器项的措辞

  • AC-12164:自定义选项的日期和时间格式不起作用

  • AC-13068:下拉列表选项缺失

    • 修复注释:现在,在创建具有超过20个值的新属性时,系统会在下拉列表中正确显示所有值。 以前,仅显示前20个值或其他选定的页面值,从而导致其余值缺失。
    • GitHub代码贡献https://github.com/magento/magento2/commit/47b448e2
  • AC-13296: [问题]将当前的存储ID用于类别运行时缓存

  • AC-13324: bin/magento sampledata:deploy —no-update引发异常

  • AC-13355: [问题]修复EAV缓存类型的用法

  • AC-13596:包含空数据的目录高级搜索将转到搜索结果页面[2.4.dev分支]

    • 修复注释:系统现在可以在“高级搜索”页面上正确保留用户,并在用户尝试执行搜索而不输入任何数据时显示错误消息。 以前,执行空搜索会将用户重定向到“目录高级搜索”页面,并显示一条消息,提示用户修改其搜索。
    • GitHub代码贡献https://github.com/magento/magento2/commit/6cfb9b6b
  • AC-13622: [问题]基于attribute_set的产品布局

  • AC-6738:eav_attribute_option_value表上缺少唯一键

  • AC-8297: [问题]使用类别产品索引器的可见性类,而不是硬编码值

  • AC-9375:新产品小部件中的货币代码未更改

  • ACP2E-2224:可配置产品的PLP上不显示常规价格

  • ACP2E-2478:库存信息未直接显示在可视化促销网格上

  • ACP2E-2621:构件内容未在cms页面上更新

    • 修复注释:现在,当产品设置为新产品且已保存时,系统会更新CMS页面上的构件内容,以确保该页面显示更新的产品集合。 以前,由于缓存中用于小部件的缓存标识不正确,页面未更新以显示新产品。
    • GitHub代码贡献https://github.com/magento/magento2/commit/f89a447e
  • ACP2E-2630:在捆绑产品上保存高级定价时出现问题

  • ACP2E-2652: [内部部署]重新索引进程在创建目录价格规则时效率低下

  • ACP2E-2679:正在通过CSV导入更新日期和时间类型产品属性的时间

  • ACP2E-2689:请求中的网站ID错误时,没有相应的错误消息

  • ACP2E-2785:删除不会影响映像的现有计划更新后,产品映像丢失

  • ACP2E-2799: [Cloud]与层级价格一起使用时捆绑产品的价格错误

  • ACP2E-2805:目录促销规则不适用于quantity_and_stock_status属性

  • ACP2E-2837:通过REST API更新价格时,产品实体updated_at列值未更新

    • 修复注释:通过REST API更新现有产品时,管理员的产品“上次更新时间”列将在适当的日期时间更新。 以前,列“上次更新时间”未正确更新。
    • GitHub代码贡献https://github.com/magento/magento2/commit/39d54c2d
  • ACP2E-2840:可以通过产品导入设置非唯一值

  • ACP2E-2843:启用单存储模式时,前端上的产品使用存储特定数据

    • 修复注释:以前,当我们为默认商店视图启用单商店模式时,更改未迁移到网站级别的范围。 应用此修复后,当我们启用单商店模式时,默认商店视图特定的数据将与网站级别特定的数据同步,并将解决产品和类别可能存在的冲突。
    • GitHub代码贡献https://github.com/magento/magento2/commit/c8931218
  • ACP2E-2857:无法使用rest API在类别中设置“默认排序依据”

  • ACP2E-2871: [Cloud]商家面临愿望清单计数问题

    • 修复注释:在一个商店中将产品添加到愿望清单不会再增加在同一浏览器中打开的其他商店中的愿望清单计数。 以前,如果两个存储都加载到同一浏览器中,则另一个存储中的愿望清单计数也会增加。
    • GitHub代码贡献https://github.com/magento/magento2/commit/3a7c4d17
  • ACP2E-2874:使用捆绑包产品时,前端类别页面显示空插槽

  • ACP2E-2888:[说明]捆绑产品序列表问题

    • 修复注释:现在,删除捆绑产品或删除捆绑产品选项时,将删除捆绑产品序列表(sequence_product_bundle_option、sequence_product_bundle_selection)中的记录。
      以前,不会删除捆绑产品序列表中的记录。
  • ACP2E-2905:[Cloud]多网站架构中的报价问题

  • ACP2E-2909: dynamic-rows.js:658编辑捆绑产品时未捕获的TypeError: dataRecord.slice

  • ACP2E-2950: [Cloud]捆绑产品在订单确认中定价错误

  • ACP2E-2956: YouTube视频添加错误

    • 修复注释:产品图像和视频是在全局范围内配置的。 鉴于您无法在一个范围中拥有产品视频,而不能在另一个范围中拥有产品视频,因此Youtube API密钥设置已设置为全局范围。
    • GitHub代码贡献https://github.com/magento/magento2/commit/a4fbf702
  • ACP2E-2964:仅对store_id=0进行[Cloud] URL更新

  • ACP2E-3009: async.operations.all已执行并创建错误。

  • ACP2E-3029: [Cloud]移动问题仅无法在PDP图像上夹紧

    • 修复注释:系统现在支持在Chrome上的移动设备视图中缩放产品详细信息页面图像的功能,从而增强移动设备用户体验。 以前,在Chrome上的移动视图中双击图像时,无法按预期放大图像。
    • GitHub代码贡献https://github.com/magento/magento2/commit/148c3ead
  • ACP2E-3058:选项名称为0的LayeredNavigation中缺少标签

  • ACP2E-3069:客户看到其他客户组的价格

  • ACP2E-3076:删除捆绑包选项时出错

    • 修复注释:系统现在可以正确删除捆绑包选项,而不会触发错误或导致页面无响应。 以前,尝试删除捆绑包选项会导致“页面无响应”错误并阻止保存产品。
    • GitHub代码贡献https://github.com/magento/magento2/commit/6a185204
  • ACP2E-3094:类别权限内存不足浏览器问题

    • 修复注释:类别权限UI经过重新设计,允许使用现成UI组件和分页呈现大量权限。 以前的类别权限会导致浏览器崩溃,同时为该类别分配大量权限。
  • ACP2E-3100: New Relic错误日志中不存在[Cloud]图像文件

    • 修复注释:系统现在将自定义占位符图像同步到本地存储,以确保在使用远程存储(如AWS S3)时正确呈现这些图像。 以前,自定义占位符图像在使用远程存储时无法渲染,从而导致图像显示中断和错误日志。
    • GitHub代码贡献https://github.com/magento/magento2/commit/d1f7dc95
  • ACP2E-3103:由于缓存,未使用新产品更新New Products RSS源

  • ACP2E-3126: [Cloud]产品媒体集GQL响应未按图像位置排序

  • ACP2E-3136:[Cloud]子类别项未显示在管理员后端的小组件编辑中

  • ACP2E-3198: [云]实际移动设备上的双指缩放和移动问题

    • 修复注释:系统现在确保移动设备上具有一致的图像缩放功能,从而提供流畅且可预测的用户体验。 以前,图像缩放功能不一致,并且在通过移动设备查看特定点后突然缩小。
    • GitHub代码贡献https://github.com/magento/magento2/commit/1366ae5e
  • ACP2E-3282:从共享目录取消分配产品时,未清除愿望清单产品

    • 修复注释:现在,如果共享目录中没有产品,则愿望清单中不会显示任何项目。 以前,即使愿望清单中实际上没有项目,愿望清单页面也会错误地显示“1个项目”的计数。
    • GitHub代码贡献https://github.com/magento/magento2/commit/5184c067
  • ACP2E-3286:相关产品全选/取消全选

    • 修复注释:以前,如果手动选择了产品,则相关产品的“全选”/“取消全选”按钮无法正常工作。 修复后,这些按钮现在可以正常工作(即使手动选择按钮也是如此),确保所有产品都已正确选择或取消选择。
    • GitHub代码贡献https://github.com/magento/magento2/commit/fd5cf3af
  • ACP2E-3336: [Cloud] Stock警报电子邮件翻译为错误的语言

  • ACP2E-3350:已禁用类别的名称在类别树中不再灰显

  • ACP2E-3410:可配置产品编辑表单加载导致超时和内存耗尽

    • 修复注释:在修复可配置产品变体之前,基于所有可能的属性选项组合来构建。 如果属性具有许多选项,这将导致冗长且耗费资源的操作。 现在,可配置产品变体是基于现有的子产品属性构建的。 这大大减少了计算,从而改进了资源的使用。
    • GitHub代码贡献https://github.com/magento/magento2/commit/078c387e
  • ACP2E-3454:使用样本时,Fotorama无法正确加载视频,已通过URL预先选择选项

  • ACP2E-3461: PageBuilder轮播构件显示不符合条件的产品

  • ACP2E-3469:当一个产品的数量无效时,将触发组中所有产品的验证错误

  • ACP2E-3513: [CLOUD]可配置产品中未显示特殊价格

  • ACP2E-3516:如果进程终止,则不清理索引器临时表

  • ACP2E-3520: 2.4.7-p3中的[QUANS]核心单元测试失败

  • ACP2E-3533:多来源分组产品的库存量检索性能问题

  • ACP2E-3641:重新修复https://jira.corp.adobe.com/browse/ACP2E-3389

目录,内容

  • ACP2E-3063: [云]缓存未失效。

    • 修复注释:以前,在保存具有更新设计布局的CMS页面时,该页面不会在前端正确反映。 应用此修复后,当我们更改设计布局并保存CMS页面时,会在前端看到相应的设计布局。
    • GitHub代码贡献https://github.com/magento/magento2/commit/66dea0de
  • ACP2E-3131:[云]在内容小部件中反转的锚点/非锚点类别

    • 修复注释:以前,当我们选择“显示位置” — >“锚点类别”时,它显示的所有类别都没有反映锚点与非锚点之间的父子关系。 应用此修复后,“显示位置 — >锚点类别”仅显示锚点类别(可选),“显示位置 — >非锚点类别”则显示非锚点类别(可选)
    • GitHub代码贡献https://github.com/magento/magento2/commit/7377de59
  • ACP2E-3152:类别无法使用小组件

    • 修复注释:以前,如果我们为不同的锚点/非锚点类别保存CMS块,那么当该块显示在前端时,它不适用于子类别。 应用此修复后,块会显示在不同类别的前端。
    • GitHub代码贡献https://github.com/magento/magento2/commit/d01ee51e

目录、框架

  • AC-9111:订单获取(Shipments|Creditmemos|Invoice)集合 — 不应加载集合

  • ACP2E-2949: [Cloud]跟进:检查数据是否有更改时数据比较不匹配

    • 修复注释:以前,每次在没有任何数据更改的情况下调用save对象(对于任何数值数据字段,如int/float/double)。 它会触发将_hasDataChanges标志设置为true并调用save函数。 它也不会检查由字符串封装的浮动数字。 进行此修复后,仅当数据发生更改时,才会调用save函数。 int/float/double-check的数据值,其值传递给函数并执行严格的类型匹配
    • GitHub代码贡献https://github.com/magento/magento2/commit/c8931218

目录,GraphQL

  • ACP2E-3090:在GraphQL中处理类别筛选器: includeDirectChildrenOnly和category_uid

  • ACP2E-3166: [Cloud] Graphql产品排序不起作用

  • ACP2E-3312:层价格在GraphQL产品中返回了错误的值(与Storefront相比)

  • ACP2E-3385:[CLOUD] B2B:通过GraphQL的类别问题

    • 修复注释:修复之后,即使根类别没有允许权限,类别graphql查询也会返回具有允许权限的类别。

目录、定价、暂存和预览

  • ACP2E-2672: [Cloud]特殊价格API端点在同时更新大量产品时返回错误

    • 修复说明:现在,特价批量更新API将为每个日期范围创建一个促销活动,而不是为每个产品和日期范围创建多个计划更新。 此外,它支持并发API请求,以更快地处理大量SKU。
    • GitHub代码贡献https://github.com/magento/magento2/commit/f89a447e

目录、产品

  • AC-7050:编辑产品中的类别选择树与目录 — >类别中的设置顺序不同

目录,SEO

  • ACP2E-3653:页面> 1时类别的规范URL不正确

    • 修复注释:以前,多页面内容的规范URL无法正常运行,始终显示基本URL。 但是,在实施此修复后,多页面内容的规范URL现在可以正确显示具有页面ID的URL。
    • GitHub代码贡献https://github.com/magento/magento2/commit/982b1c42

目录,搜索

  • ACP2E-2757:产品未在类别和搜索中显示,但直接链接正常工作

  • ACP2E-3053: [Cloud]某些类别页面上的弹性搜索错误

    • 修复注释:以前,在提及配置票证后,当我们为多个产品定价0时,会在前端类别页面引发异常。 应用此修复后,当多个产品价格0并且我们在前端加载类别页面时,它不会引发任何异常,并且将成功加载类别页面。
    • GitHub代码贡献https://github.com/magento/magento2/commit/c8931218
  • ACP2E-3345:创建对象时出现类型错误: Magento\CatalogSearch\Model\Indexer\Fulltext\Interceptor异常

  • ACP2E-3521:在Magento Admin中保存后,产品的[CLOUD]问题在前端不可见

目录,运输

  • ACP2E-3195:为礼品注册项目下订单时送货地址为空
    • 修复注释:以前,对于来宾用户礼品注册表项目,当从电子邮件功能返回时,会生成一个空的空白地址,该地址不适合下订单。 应用此修复后,礼品注册表将检查已登录的用户/来宾用户和分配的地址(如果存在)。

内容

  • AC-10539:[问题],最近查看的小组件中显示价格

  • AC-10596: [问题] acl.xsd文件中的拼写错误和语法正确

  • AC-10845: Pagebuilder横幅图像在图库中不可见

    • 修复注释:系统现在可以正确显示在Pagebuilder图库中新创建的文件夹中上传的横幅图像,从而消除以前的控制台错误。 在此修复之前,如果横幅图像上载到新文件夹中,则不会在图库中显示这些图像,从而导致控制台错误。
    • GitHub代码贡献https://github.com/magento/magento2/commit/c8f87c25
  • AC-12283:更新到2.4.5-p8后“未设置区号”

  • AC-12692:构件类别树未正确呈现

  • AC-13054:在设计配置页面中更改主题时,无法看到“使用默认值”消息

    • 修复注释:系统现在包含一个单独的列,以根据设计配置页面中选择的主题显示“使用默认值”消息。 这确保默认值状态清晰可见。 以前,不会显示“使用默认值”消息,这会导致对所选主题状态的混淆。
    • GitHub代码贡献https://github.com/magento/magento2/commit/47b448e2
  • AC-13569: [问题]再次恢复与TinyMCE插件的向后兼容性(之后……

  • AC-9638:[问题]产品页面上的WYSIWYG编辑器中的文件上传问题

    • 修复注释:系统现在可以正确显示文件夹树,并允许在产品页面上的WYSIWYG编辑器中上传图像,即使先展开“图像和视频”选项卡后也是如此。 以前,先展开“图像和视频”选项卡,导致文件夹树无法显示,以及尝试在WYSIWYG编辑器中上传图像时出现错误消息。
    • GitHub问题https://github.com/magento/magento2/issues/38026
    • GitHub代码贡献https://github.com/magento/magento2/pull/38025
  • ACP2E-2392:[内部部署]动态块问题

  • ACP2E-2606: YouTube nocookie url在页面生成器中不起作用

    • 修复注释:现在,pagebuilder在验证规则的表单元素设置中允许youtube无cookie url。 以前,youtube无cookie url在pagebuilder中不起作用。
  • ACP2E-2693: [Cloud]前端因新闻稿模板中的问题未加载

  • ACP2E-2836: ACP2E-2836: [Cloud]调查日志中发现的异常: InvalidArgumentException:类在vendor/magento/module-rule/Model/ConditionFactory.php中不存在

    • 修复注释:删除PageBuilder产品内容设置的条件不会再导致在日志文件中记录异常。 以前,删除PageBuilder产品内容设置上的条件会导致在日志中记录严重异常,即使不会导致前端出现任何问题。
    • GitHub代码贡献https://github.com/magento/magento2-page-builder/commit/36c0f5df
  • ACP2E-2842:切换到单存储模式 — 全局内容不再出现

    • 修复注释:在启用单商店模式时,系统现在将商店视图设计配置与网站设计配置同步,确保内容更新在前端可见。 以前,切换到单商店模式会阻止内容更新反映在店面上。
    • GitHub代码贡献https://github.com/magento/magento2/commit/7e0e5582
  • ACP2E-2903:页面生成器在尝试添加链接和其他可用性问题时替换图像。

    • 修复注释:现在单击图像,页面生成器文本元素的wysiwyg编辑器中的链接将在图像、链接配置对话框中加载正确的数据。 现在,在编辑器中添加指向图像的链接也可正常使用。 以前,图像会被替换为链接。
    • GitHub代码贡献https://github.com/magento/magento2-page-builder/commit/4d5db10a
  • ACP2E-2970:将0字节的图像放在目录中时,旧媒体集无法呈现图像

    • 修复注释:系统现在可以在不中断功能的情况下处理媒体集中的0字节图像,从而允许按预期显示和选择目录中的其他图像。 以前,如果媒体集中存在0字节图像,则会阻止显示或选择目录中的所有图像。
    • GitHub代码贡献https://github.com/magento/magento2/commit/35b1b1da
  • ACP2E-3064:编辑CMS块时页面生成器出错

  • ACP2E-3092: [CLOUD]购物车分区中没有结帐或编辑购物车的按钮

  • ACP2E-3113:类别页面上的内容暂存预览未显示产品小组件

    • 修复注释:通过确保将链接到CMS块的其他类别的产品条目准确记录到数据库中,该问题已得到修复。 以前,在请求类别预览页面时返回空结果集。
  • ACP2E-3122: [CLOUD]上传图像按钮不起作用

  • ACP2E-3127: imagecreatetruecolor():参数#2 ($height)必须大于0。 无法上传特定图像

    • 修复注释:解决了通过媒体集上载高度为0的图像时,导致管理员出现错误的问题,并使用sync命令成功同步资产。 以前无法通过媒体集上传图像,并且当特定图像位于媒体集内时,同步命令也会失败。
    • GitHub代码贡献https://github.com/magento/magento2/commit/6f4805f8
  • ACP2E-3154: Prototype.js Array.from与Google映射API冲突

  • ACP2E-3275: [Cloud] - CMS滑块未反映最新更改

  • ACP2E-3326:使用页面生成器按特定顺序插入CMS块时,CSM页面中出错

    • 修复说明:以前,在某些版本的PHP和OS (Linux)上,通过PageBuilder引用其他cms块的块的块呈现会失败,并出现“发生未知错误。 请重试。” 现在,cms块的内容在PageBuilder控制的内容中正确呈现。
    • GitHub代码贡献https://github.com/magento/magento2-page-builder/commit/ae2cdeb0
  • ACP2E-3388: [Cloud]动态块将无法正常工作

    • 修复注释:注销后现在会清除已登录的客户区段,以防止来宾会话继承先前登录的区段
  • ACP2E-3428:大型内容的Pagebuilder模板预览失败

  • ACP2E-3430:缺少TinyMCE 7字体大小的最新安全更新

  • ACP2E-3483:管理员中的TinyMCE 7编辑器字体大小为PT,而不是PX,请说明

  • ACP2E-3490:页面生成器中的产品内容类型已折叠,没有正确的消息

  • ACP2E-3534: [页面生成器]将产品列表添加到块会导致错误

内容,SEO

  • ACP2E-2870: CMS页面层次结构可能导致URL重写问题
    • 修复注释:以前,对于非网站根页面的自定义永久URL重写,会无限期重定向,并且永远不会加载页面。 应用此修复后,非网站根页面的自定义URL重写可按预期运行,并且不会发生重定向循环。

内容、暂存和预览

  • ACP2E-2979:当目录价格规则设置为使用动态块进行计划时,该规则不显示
    • 修复说明:系统现在可以在产品详细信息页面上正确显示与计划目录价格规则关联的动态内容。 以前,在计划目录价格规则时加载动态内容失败。

客户/客户

  • AC-12162:客户创建页面中的“前端 — 出生日期”验证失败

  • AC-13060:“客户区段”>“完成情况”>“产品历史记录”*>“已查看产品”不起作用

    • 修复注释:现在,当满足条件时,系统将在“客户区段”下的“已查看产品”条件中正确显示匹配的注册客户。 以前,即使满足条件,匹配的注册客户数仍为零。
  • AC-8499:更改国家/地区下拉列表时,未重置区域文本字段

    • 修复注释:现在,在下拉菜单中更改国家/地区时,系统会重置区域文本字段,以确保以前的值不会保留。 以前,从下拉列表中更改国家/地区不会重置“区域”字段,从而导致保留最后保存的值。
    • GitHub代码贡献https://github.com/magento/magento2/commit/3ea26621
  • AC-9240:删除客户时不会清除Storefront上所有已登录和删除客户的浏览器会话数据

    • 修复注释:删除客户现在会按预期清理店面中所有已登录和删除客户的浏览器会话数据。 购物者可以继续购物,他们的浏览器将他们的会话视为访客会话。 以前,当从管理员中删除登录购物者的客户帐户时,购物者的浏览器会引发JavaScript错误。
    • GitHub代码贡献https://github.com/magento/magento2/commit/7d5e3906

框架

框架,GraphQL

框架、产品

  • AC-13011:由于magento异常,未生成2.4.8-beta1 EE报告

框架、UI框架

  • ACP2E-3324:即使配置值已锁定,仍有可能覆盖配置值

    • 修复注释:以前对于此修复,无法通过bin/magento config:set命令设置设计配置,并且可以通过操作显示这些配置信息的表单来更改锁定的值。 修复后,无法再更新从cli使用 — lock-env或 — lock-conf设置的锁定值。
    • GitHub代码贡献https://github.com/magento/magento2/commit/55615e61

GraphQL

  • AC-11729:即使标头值未通过验证,Magento_GraphQl也会执行标头处理

    • 修复注释:系统现在确保仅在标头值通过验证时只执行一次标头处理,从而增强安全性并防止潜在漏洞。 以前,即使标头值未通过验证,也会执行标头处理,这会由于两次处理标头值而导致潜在漏洞和意外行为。
    • GitHub代码贡献https://github.com/magento/magento2/commit/c8f87c25
  • AC-8951:物理Giftcard选项没有正确的排序顺序

    • 修复注释:在通过GraphQL查询时,系统现在可以正确排序实际礼品卡产品的选项,确保与Luma主题一致的呈现。 以前,根据Luma主题排序顺序不正确,导致显示和排序选项不正确,例如发件人姓名、收件人姓名和金额。
    • GitHub代码贡献https://github.com/magento/magento2/commit/1bafc571
  • AC-9157: [GraphQL]解析器缓存在创建/编辑/移动/删除临时更新时失效

    • 修复注释:系统现在确保在创建、编辑、移动或删除临时更新时不会使解析程序缓存失效,但仅当将临时更新应用于实体时才会使解析程序缓存失效。 以前,解析程序缓存过早失效,甚至在应用暂存更新之前就失效,这导致不必要的缓存失效。
    • GitHub代码贡献https://github.com/magento/magento2/commit/0c53bbf7
  • ACP2E-2642:没有为内容暂存更新清除快速缓存

  • ACP2E-2653:禁用分层导航 — 不从Graphql中删除聚合

    • 修复注释:当管理员配置设置为“目录>分层导航>显示类别过滤器”时,在通过GraphQL查询请求具有类别聚合的产品搜索时应用检查后,问题已修复。
    • GitHub代码贡献https://github.com/magento/magento2/commit/12e071c3
  • ACP2E-2928:包含价格过滤器{from:"0"}的GraphQL产品调用未返回任何结果

  • ACP2E-2974:客户返回属性的翻译未反映在相应StoreView的GraphQL API中

  • ACP2E-3128: [带有节点引号的getPurchaseOrder的GraphQL调用已中断]

  • ACP2E-3184:如果未在“所有商店视图”中启用产品,生产站点中未显示[Cloud]可配置产品

    • 修复注释:系统现在可以正确显示站点中的可配置产品,即使未在“所有商店视图”中启用该产品,但在特定商店视图范围内启用该产品也是如此。
      以前,如果在“所有商店视图”中禁用某个产品,并且仅在特定商店视图范围内启用该产品,则产品属性在GraphQL响应中将无法正确显示,从而导致产品无法正确显示。
    • GitHub代码贡献https://github.com/magento/inventory/commit/3f300077
  • ACP2E-3190: [Cloud]当同一简单产品分配给多个可配置产品时,产品graphql出错

    • 修复注释:以前,对于具有相同简单产品的单独可配置产品,grapQL会返回错误。 应用此修复后,不同的可配置产品具有相同的简单产品,grapQL会返回无错误的结果。
    • GitHub代码贡献https://github.com/magento/magento2/commit/148c3ead
  • ACP2E-3215:多站点设置中存在用户身份验证和跨站点令牌访问的[云]问题

    • 修复注释:多站点设置中的GraphQl客户信息和购物车查询会检查非默认网站上的客户是否存在。
      以前,在多站点设置中,查询不起作用,不能确保客户存在于非默认网站上。
    • GitHub代码贡献https://github.com/magento/magento2/commit/581b7ef1
  • ACP2E-3253: GraphQL cart itemsV2分页无法正常工作

  • ACP2E-3255:在获取customerCart时应指定[GRAPHQL]模型值

    • 修复注释: GraphQL“customerCart”查询现在可以创建空购物车,即使报价在数据库中不可用也是如此。 以前,此操作在创建空购物车时由于国家/地区验证问题而失败。
    • GitHub代码贡献https://github.com/magento/magento2/commit/fd5cf3af
  • ACP2E-3380: [GraphQl]愿望清单项目可通过GraphQl查看,但在店面不可见

  • ACP2E-3404: [GraphQL]重置内容与主题/链接之间的密码电子邮件不一致

  • ACP2E-3419: [Cloud]产品GraphQL查询返回未分配到当前网站的相关产品

    • 修复注释:以前,对于graphQL查询,产品查询无法正确显示与多商店相关的产品。 应用此修复后,对于产品,graphQL会查询多商店相关产品并相应地显示。
    • GitHub代码贡献https://github.com/magento/magento2/commit/078c387e
  • ACP2E-3447:在GraphQL标头中使用错误的Store ID会导致内存错误

  • ACP2E-3467: [Cloud] 500响应2.4.7上的空Graphql响应

  • ACP2E-3492:[Cloud] Graphql API存在问题

  • ACP2E-3505:在grpahQL查询中,禁用产品仍然出现在相关、追加销售、交叉销售商品中

  • ACP2E-3647: [CLOUD]: GraphQl错误内部服务器错误placeOrder突变

    • 修复注释:请求中包含优惠券代码信息的“placeOrder”突变不再引发内部错误异常,订单已成功下达。 以前,它失败并出现“内部服务器错误”。
    • GitHub代码贡献https://github.com/magento/magento2/commit/982b1c42
  • LYNX-426:未针对具有动态价格的捆绑产品计算discount_percentage

    • 修复注释:为product.price_details的discount_percentage添加的修复未显示已启用动态价格并应用折扣优惠券的捆绑产品的正确值。
  • LYNX-485:当捆绑产品之一缺货时,捆绑产品仍显示“IN_STOCK”

    • 修复注释:解决了捆绑产品即使其中一个捆绑产品缺货,仍显示“IN_STOCK”的问题。
  • LYNX-486: not_available_message和only_x_left_in_stock不显示相同的可用库存

    • 修复注释:解决了not_available_message和only_x_left_in_stock显示库存可用性不一致的问题
  • LYNX-488: original_row_total字段返回了错误值

    • 修复注释:解决了original_row_total字段的问题,该字段在选择自定义选项时返回不正确的值
  • LYNX-503:应根据配置显示分组的产品缩略图 .

    • 修复注释:解决了该问题,以确保根据配置设置显示分组的产品缩略图
  • LYNX-510:在OrderAddress中查询selected_options时出错

    • 修复注释:在订单地址GraphQL响应中将AttributeSelectedOptions更新为custom_attributesV2。
  • LYNX-512: original_item_price不包含折扣

    • 修复注释:已更新original_item_price以包含折扣。
  • LYNX-530:无可用消息未显示可用库存数量

    • 修复注释:已解决AddProductsToCart突变的错误消息和错误代码以与“不可用”消息配置一致
  • LYNX-532:“Simple with custom options products with multi-select options”返回“OUT_OF_STOCK”状态

    • 修复注释:更新了库存包中的StockStatusProvider解析程序,以修复具有自定义选项的简单产品的stock_status。
  • LYNX-533:错误(GQL): cart.itemsV2.items.product.custom_attributesV2返回服务器错误

    • 修复注释:通过添加不含任何自定义属性的产品解决了当购物车查询包含产品的自定义属性时发生的服务器错误。
  • LYNX-536: orders/date_of_first_order始终返回null

    • 修复注释:解决了orders > date_of_first_order始终返回null的问题。
  • LYNX-544:客户不能取消部分发运的订单

    • 修复说明:已添加验证,以限制客户取消部分发运的订单。
  • LYNX-548:根据错误消息取消订单的错误代码

    • 修复注释:订单取消的错误代码现在基于特定错误消息。
  • LYNX-581:将Cookie相关属性从私有移回受保护属性

    • 修复注释:将Magento\Framework\App\PageCache\Version类构造函数属性的可见性从私有还原为受保护
  • LYNX-600:将默认GraphQL查询的最大复杂度增加到1000

    • 修复注释:将默认最大GraphQL查询复杂性从300提高到了1000。
  • LYNX-620: GQL - itemsV2 >原始行总计,对于具有单独价格的文件选项的可下载产品,价格范围价格返回为$0.00。

    • 修复说明:解决了启用了单独链接购买选项的可下载产品对itemsV2 >原始行总计返回$0的问题,对于具有单独价格的文件选项的产品,价格范围返回为$0.00。
  • LYNX-711:创建时表的架构与升级时不同

    • 修复注释:解决了向现有表添加新的VARCHAR列导致测试失败的问题,该问题是由于全新安装和升级之间的架构差异造成的。 modifyColumn()方法现在通过设置默认字符集和排序规则来正确处理VARCHAR列。
  • LYNX-772: PHP-8.4版本的GraphQl兼容性

    • 修复注释:修复了跨多个解析器的GraphQL与PHP 8.4的兼容性问题,确保顺利地工作。 更新了CatalogRule、Customer、GiftMessage、GiftCard和GiftWrapping模块中受影响的文件。

GraphQL、库存/MSI

GraphQL、库存/MSI、性能

GraphQL,性能

  • AC-9569: [GraphQL解析程序]未使导入中的客户解析程序数据失效

    • 修复注释:通过导入编辑或删除客户时,GraphQL客户解析程序缓存现在会按预期失效。 以前,缓存不会失效,并且可以在导入期间编辑或删除客户数据。
    • GitHub代码贡献https://github.com/magento/magento2/commit/0574ac23

GraphQL,搜索

  • ACP2E-2809: GraphQL产品列表按多个参数排序不起作用

  • ACP2E-948:产品列表GraphQL查询仅限于total_count 10,000个产品

GraphQL,测试框架

导入/导出

  • AC-12172:随自定义选项类型一起提供时,在产品导入时出现问题: file (创建的产品不包含自定义选项的价格,并且仅显示提供的第一个文件类型扩展名)

    • 修复注释:系统现在可以正确导入具有“file”类型的自定义选项的产品数据,从而确保显示所有提供的文件扩展名并包含自定义选项的价格。 以前,在产品导入过程中,如果为“file”类型的自定义选项提供了多个文件扩展名,则只显示第一个扩展名,并且缺少自定义选项的价格。
    • GitHub问题https://github.com/magento/magento2/issues/38805
    • GitHub代码贡献https://github.com/magento/magento2/pull/38926
  • ACP2E-2710:“导入历史记录”网格中导入操作的执行时间错误

  • ACP2E-2737:正在使用导入的相同电子邮件地址创建重复客户

  • ACP2E-2902:添加/更新产品导入重复可自定义选项

    • 修复注释:通过在产品选项CSV导入期间将正确的存储分配给产品选项,该问题已得到解决。
      以前,分配给管理员存储,而不是其各自的存储。
    • GitHub代码贡献https://github.com/magento/magento2/commit/3a7c4d17
  • ACP2E-2990:客户的“created_at”日期未在导出时转换为存储时区

  • ACP2E-3165: [Cloud]使用CSV检查导入数据中的数据时出现错误

    • 修复注释:在CSV导入期间检查数据时没有错误。 以前,使用管理员的CSV检查导入部分中的数据时显示的错误消息是:“我们在以下行中找不到与此电子邮件和网站代码匹配的客户: 1”。
    • GitHub代码贡献https://github.com/magento/magento2/commit/8459b17d
  • ACP2E-3172:缺少导入按钮

  • ACP2E-3382:无法导入导出的客户地址

    • 修复注释:客户地址导入将按预期继续。 以前,如果共享客户帐户=全局,客户地址导入文件将不会通过验证,并且有两个网站(默认网站有一个受限制的国家/地区列表)的导入地址适用于另一个允许国家/地区不同的网站
    • GitHub代码贡献https://github.com/magento/magento2/commit/ec7e32a9
  • ACP2E-3448: [Cloud] CSV文件中的错误数量未给出错误

  • ACP2E-3455:当URL密钥已属于某个类别时,导入产品时生成的URL密钥重复错误消息不正确

  • ACP2E-3475:产品导出导致内存限制为4G的OOM

    • 修复注释:在此修复之前,如果产品属性具有数千个选项值(即使具有4G可用内存),则产品导出失败。 进行此修复后,产品导出应会完成导出csv文件。
    • GitHub代码贡献https://github.com/magento/magento2/commit/1984c61c
  • ACP2E-3527: [云]导入进程相互干扰

导入/导出,性能

  • ACP2E-3476: [Cloud]产品导入时间已显着增加

安装和管理

库存/MSI

  • AC-10750:当数据库使用前缀时,可配置产品的清单更新失败

    • 修复注释:当数据库使用前缀时,系统现在可以正确更新可配置产品的清单,从而防止出现任何错误消息并确保保存正确的数量。 以前,如果数据库使用前缀,则在尝试保存可配置产品中简单产品的库存数量时会出错。
    • GitHub问题https://github.com/magento/magento2/issues/38045
  • AC-11593:添加具有属性的映射时,Google google API密钥不起作用

    • 修复注释:系统现在支持最新的Google Maps API版本3.56,使用户能够成功地将映射内容块从PageBuilder菜单添加到舞台中,而不会遇到任何错误。 以前,由于Google地图API版本存在兼容性问题,用户无法添加地图内容块,从而导致“出现问题”错误消息。
    • GitHub代码贡献https://github.com/magento/magento2/commit/0574ac23
  • AC-13922:无法为具有多个来源且SKU已损坏的订单项目创建装运

    • 修复注释:以前,通过数据库错误地在SKU中添加空格会导致装运页面出错,该错误现已修复,并且自动修剪被视为人性化的错误,未找到任何影响。因此,已成功创建装运。
    • GitHub代码贡献https://github.com/magento/inventory/commit/c18eb5fa
  • ACP2E-1411:[测试]捆绑销售前部显示库存为0的产品

    • 修复注释:捆绑产品未使用其他库存显示在其他网站上。
  • ACP2E-2794:[Cloud]产品列表的关键问题为空白

  • ACP2E-3335:启用MSI收取存储时无法发送订单

  • ACP2E-3355: Cron重新索引无法更新前端产品可用性

  • ACP2E-3357:启用MSI时,将图像添加到可配置项无法正常工作。

  • ACP2E-3470:清洁M2.4.7-p3中的捆绑产品+ MSI出现问题

库存/MSI、搜索

  • ACP2E-3413:未将SKU设置为可搜索属性时,所有产品都将使用[is_out_of_stock] = 1编制索引

订购

  • AC-10828:后端订单概览屏幕:在订单物料级别上看不到延期交货数量

  • AC-10994: [问题]订单地址呈现器中使用了错误的存储ID

  • AC-11690: JoinProcessor缓存问题

  • AC-11798: [问题]装运价格在打印的PDF中显示差异

  • AC-13839:使用已删除的父可配置产品重新排序

  • AC-13924: [问题]修复错误\Magento\Sales\Model\Order\Email\Container\Template::$id属性

  • ACP2E-2622:无法在现有订单详细信息中保存对电话号码的更改

  • ACP2E-2734:电子邮件发送失败

    • 修复注释:系统现在包含一个配置选项async_sending_attempts ,用于指定在停止前尝试发送电子邮件的次数,从而改进了在启用“异步发送”时处理失败的电子邮件发送的方式。 以前,如果电子邮件发送失败,系统将不断尝试重新发送,导致系统日志中出现无休止的错误消息循环。
    • GitHub代码贡献https://github.com/magento/magento2/commit/b2286ecf
  • ACP2E-2756: [Cloud]部分退回部分发运的订单时,订单状态更改为完成

  • ACP2E-3002: [CLOUD]无法禁用从管理员UI发送电子邮件,如开发文档所示

    • 修复注释:系统现在可以正确阻止在禁用电子邮件通信时发送销售电子邮件。 重新启用电子邮件通信后,将不再发送这些电子邮件。 以前,在电子邮件通信被禁用时发起的销售电子邮件,在电子邮件通信重新启用后仍会发送。
    • GitHub代码贡献https://github.com/magento/magento2/commit/c8931218
  • ACP2E-3045:未全额退款的已结订单

    • 修复注释:当具有未捕获付款的订单已创建装运时,系统现在将订单状态正确维护为“正在处理”,将发票状态正确维护为“待定”。 这可确保在全额退款后只将订单标记为“已结”。 以前,为具有待定发票的订单创建发运会错误地将订单状态更改为“已关闭”。
    • GitHub代码贡献https://github.com/magento/magento2/commit/6a185204
  • ACP2E-3311: [Cloud]如果仅未设置默认帐单地址,则无法在一个商店的admin中创建订单

    • 修复注释:现在相关的错误消息“关联网站中已存在具有相同电子邮件地址的客户”。 如果客户没有默认帐单地址,但尝试在其他商店中创建订单,则会显示。
    • GitHub代码贡献https://github.com/magento/magento2/commit/d75cff27
  • ACP2E-3416:已发送管理员重复下单请求

    • 修复注释:以前,管理员面板中的“提交订单”按钮可能会被多次单击或通过反复按“Enter”键而激活,从而导致重复提交订单或提交订单出错。 现在,会阻止执行其他操作,直到完全处理完订单,从而确保仅提交一个订单。
    • GitHub代码贡献https://github.com/magento/magento2/commit/5184c067
  • ACP2E-3425:即使没有付款方式,管理员仍然可以下订单

  • ACP2E-3518:从Mozilla Firefox浏览器上的“管理员”创建订单后,项目重复

    • 修复注释:在admin中创建订单时,在Firefox中不再重复使用“按SKU添加产品”添加的产品。

订单,支付

  • ACP2E-3233:即使没有付款方式,管理员仍然可以下订单

订单,退货

订单,税金

  • ACP2E-3003: [CLOUD] RESTFUL订单API中的base_row_total在启用跨国交易和应用优惠券折扣时不正确

其他

  • BUNDLE-3394: [Braintree]退款联机存储事务为transactionid-refall
  • BUNDLE-3421:[Braintree] + [CLOUD]Braintree(信用卡)订单无法分摊费用
  • BUNDLE-3422: [Braintree] [Cloud]Braintree SSL证书将于6月30日前过期
  • LYNX-339: GQL查询中返回的private_content_version Cookie
    • 修复注释:修复了在GraphQL查询中返回private_content_version Cookie(即使会话Cookie已禁用)的问题。 当会话按预期禁用时,GraphQL响应中将不再包含该Cookie。
  • LYNX-366:实体礼品卡查询中的电子邮件prop出现服务器错误
    • 修复注释:修复了在物理礼品卡上查询sender_email和recipient_email时导致服务器错误的问题。 现在,这些prop可正确返回虚拟礼品卡,并且查询行为保持一致。
  • LYNX-380: CartItemInterface中的is_available属性对可配置产品始终返回false
    • 修复注释:修复了CartItemInterface中的is_available属性始终为库存可配置产品返回false的问题。 现在,在适用的情况下,它正确地将可用性反映为true。
  • LYNX-382: CartItemInterface中的is_available属性返回true,即使可销售库存低于产品的数量也是如此
    • 修复注释:修复了CartItemInterface中的is_available属性不正确地返回true的问题,即使购物车项目数量超过可销售库存也是如此。
  • LYNX-395: ProductInterface中的only_x_left_in_stock属性对可配置产品不准确
    • 修复注释:修复了ProductInterface中的only_x_left_in_stock属性无法准确反映购物车中可配置产品变体的可用库存的问题。 现在, only_x_left_in_stock值正确对应于实际变型库存水平,从而确保在Cart GQL查询中返回准确的库存数据。
  • LYNX-399:将简单产品添加到分组产品中的购物车时,会返回占位符缩略图
    • 修复注释:修复了在将简单产品(分组产品的一部分)添加到购物车时返回占位符缩略图图像的问题,即使该产品已分配图像。
      修复详细信息:
  • 现在,产品缩略图可正确显示分配的图像(如果可用)。
  • 缩略图选择遵循下的管理员配置:
    商店>配置>销售>结账>购物车>分组的产品图像。
    这可确保根据商店设置对分组产品执行一致的缩略图行为。
  • LYNX-400:客户的自定义选项属性不适用于整数值
    • 修复注释:修复了在返回值为整数时,客户的自定义选项属性不起作用的问题。 现在,自定义选项可正确处理并按预期返回整数值。
  • LYNX-402:尝试获取具有动态价格的捆绑包产品的价格详细信息时出现内部服务器错误
    • 修复注释:解决了通过GraphQL查询具有动态定价的捆绑产品的price_details时导致内部服务器错误的问题。 此增强功能可在使用配置有动态定价的捆绑产品时确保稳定的购物车查询。
  • LYNX-403: only_x_left_in_stock对于可配置产品始终返回0
    • 修复注释:解决了使用带有选项的父SKU添加可配置产品时,only_x_left_in_stock属性始终返回0的问题。
      修复详细信息:
  • only_x_left_in_stock值现在可准确反映所选子变体的库存,而不是父SKU的库存。
  • 这确保在购物车和产品页面中正确显示可配置产品变体的库存水平。
  • LYNX-405: GraphQL错误:可自定义选项查询中不支持的“file”类型
    • 修复注释:修复了GraphQL在购物车项目中对类型为“文件”的可自定义选项返回错误的问题。 现在,查询可正确返回所有可自定义选项类型的详细信息(包括基于文件的选项),而不会导致错误。
  • LYNX-411: GraphQL查询未返回可自定义产品的正确计算常规价格
    • 修复注释:修复了GraphQL未针对可自定义产品返回正确计算出的正常价格的问题。 现在,查询会在prices属性中正确包含计算出的正常价格以及应用的自定义值(例如$125),这既反映了基本价格,也反映了任何其他自定义成本。
  • LYNX-412:通过EstimatedTotals应用的ApplicedTaxes随更新的突变而保留
    • 修复注释:修复了EstimatedTotals突变的问题,该问题导致即使更新区域或邮政编码后,购物车中仍保留已应用的税费。 现在,当在区域和邮政编码值之间更改时,此突变可正确更新应用的税种,从而确保仅根据当前购物车数据应用正确的税则。
  • LYNX-420: CartItemInterface中的is_available属性返回true,即使可销售库存低于产品的数量也是如此
    • 修复注释:修复了CartItemInterface中的is_available属性不正确地返回true的问题,即使可销售库存低于请求的产品数量也是如此。 现在,当产品的数量超过可用库存时,is_available字段会正确返回false 。
  • LYNX-421:无法向购物车添加优惠券以获得仅送货折扣
    • 修复注释:修复了无法将优惠券应用于购物车以获取仅配送折扣的问题。 现在,当使用不含产品条件的销售规则时,优惠券将正确应用于装运金额,从而确保将预期折扣应用于装运成本。
  • LYNX-425:产品正常价格为12位小数且值错误
    • 修复注释:修复了在应用多个税率时product.price_range.maximum_price和minimum_price GraphQL路径中的regular_price值与目录价格不匹配的问题。 regular_price现在可以始终如一地反映所有税务配置的目录价格,从而确保购物车汇总中准确的单价、总行成本计算和折扣检查。
  • LYNX-430:捆绑产品缺货的购物车出现GraphQL服务器错误
    • 修复注释:修复了在获取购物车时GraphQL返回内部服务器错误的问题,该购物车包含带有缺货项目的捆绑产品,尤其是当查询包含itemsV2属性时。 GraphQL现在可以按预期正确返回项目列表,并在捆绑的产品项目条目中附加相关错误消息。
  • LYNX-441:无法创建具有自定义属性的地址
    • 修复注释:修复了createCustomerAddress突变的问题,该突变阻止使用所需的自定义属性创建地址。 现在,当提供相应的有效负载时,该突变可正确处理自定义地址属性。
  • LYNX-447:捆绑产品上只有_x_left_in_stock的购物车出现GraphQL服务器错误
    • 修复注释:修复了获取购物车时导致内部服务器错误的问题,该购物车包含GraphQL查询中具有only_x_left_in_stock字段的捆绑产品。 GraphQL现在可以正确为only_x_left_in_stock字段返回浮点值或空值,而不会出现错误。
  • LYNX-464:删除购物车中可配置产品不足的其他产品时GraphQL出错
    • 修复注释:修复了以下问题:如果购物车还包含库存不足的可配置产品,则尝试从购物车中删除库存产品会导致“请求的数量不可用”GraphQL错误。 现在,删除操作可按预期运行,而不会触发错误。
  • LYNX-469:由于突变中的SKU区分大小写,无法添加产品
    • 修复注释:解决了使用具有不同大小写的SKU时,addProductsToCart突变返回“PRODUCT_NOT_FOUND”错误的问题。 该突变现在处理SKU不区分大小写,确保与目录服务查询和PDP行为一致。
  • LYNX-603: Product attribute > trademark short form ™返回为™
    • 修复注释:解决了GraphQL API的产品名称存在的字符编码问题
  • LYNX-619: updateCustomerEmail突变问题
    • 修复注释:解决了updateCustomerEmail突变的问题,该问题导致没有所需自定义属性(在创建帐户后添加)的客户无法更新其电子邮件。
  • LYNX-626:使用pickup_location_code时突变setShippingAddressesOnCart引发错误
    • 修复注释:修复了在使用pickup_location_code但未指定customer_address_id或address时,setShippingAddressesOnCart突变返回错误的问题。 现在,此突变可正确设置仅包含pickup_location_code的配送地址。
  • LYNX-627: CustomerOrder.items_eligible_for_return列表必须与订单项目一致
    • 修复注释:解决了订单中退货资格不一致的问题:
  1. CustomerOrder.items_eligible_for_return列表现在与实际订单项目一致。
  2. 如果已经返回了全部数量,则OrderItemInterface.eligible_for_return字段会正确返回false。
  3. 现在,CustomerOrder.items_eligible_for_return只包括尚未在退货流程中的物料。
  • LYNX-628:添加quantity_return_requested字段
    • 修复注释:已将quantity_return_requested字段添加到OrderItemInterface,允许您识别已提交退货的物料数量。 这样可以增强现有quantity_returned字段的退货跟踪。
  • LYNX-634:为所有项目创建全部数量的退货后,订单可用操作不得包含RETURN
    • 修复注释:修复了在为所有项目创建完全返回后,GraphQL customer.orders查询中的available_actions字段错误地包含RETURN的问题。 现在,返回过程完成后,将正确删除RETURN操作。
  • LYNX-637: Storefront兼容性 — 更新逻辑以获取带前缀的表名和其他细微改进
    • 修复注释:更新了逻辑以检索带有前缀的表名(与SCP更改相关)。
  • LYNX-643:使用setBillingAddressOnCart GQL的same_as_shipping字段时,无法保存在通讯簿中
    • 修复注释:修复了在将setBillingAddressOnCart GraphQL突变的same_as_shipping字段设置为true时,未将送货地址保存到客户通讯簿中的问题。 现在,送货地址已按预期正确存储。
  • LYNX-650:标准化突变中的order_id
    • 修复注释:将order_id输入逐个标准化,并更新了订单取消确认电子邮件模板,以公开增量id而不是订单id。
  • LYNX-651:客户订单未显示订单注释
    • 修复注释:解决了CustomerOrder在来宾和客户订单GraphQL查询中包含订单注释的问题。
  • LYNX-652: original_item_price不得包含任何折扣
    • 修复注释:更新了GraphQL购物车项目价格中original_item_price的逻辑以排除折扣。
  • LYNX-681:当捆绑产品之一缺货时,捆绑产品仍显示“IN_STOCK”
    • 修复注释:解决了即使其中一个捆绑产品缺货,捆绑产品的product.stock_status仍显示“IN_STOCK”的问题。
  • LYNX-686:如果客户存在已删除自定义属性的值,则客户查询返回内部服务器错误
    • 修复注释:修复了在已删除的自定义属性仍具有存储值时,客户查询返回内部服务器错误的问题。 现在,如果请求不存在的属性,则会返回正确的错误消息。 删除客户自定义属性时,必要的缓存将失效。
  • LYNX-687:返回和取消确认链接的操作参数
    • 修复注释:为返回和取消确认电子邮件相关链接添加了操作参数
  • LYNX-688:访客用户确认URL被重定向到订单状态页面,因为它缺少orderRef(对于GuestRMA)
    • 修复注释:向来宾RMA确认电子邮件中的链接添加了orderRef参数
  • LYNX-689:访客用户确认URL被重定向到订单状态页面,因为它缺少orderRef
    • 修复注释:已将orderRef参数添加到来宾订单取消确认电子邮件中的链接
  • LYNX-690:禁用RMA时客户查询出现问题
    • 修复注释:更新了GraphQL逻辑,以确保即使全局禁用RMA,以前创建的返回仍可访问。 错误消息已移除,以改进店面UX,确保客户仍然可以查看其过去的退货。
  • LYNX-696:应用冲突的优惠券时,GraphQL未返回更新的购物车数据
    • 修复注释:修复了在应用优先级较高的冲突优惠券时导致出现错误消息而不返回更新的购物车数据的问题。 现在,当新的优惠券使现有优惠券失效时,该突变会正确返回应用了有效优惠券的购物车。
  • LYNX-699:无法为placeOrder GQL上不可为空的字段“TaxItem.title”返回null
    • 修复注释:修复了由于不可为空的字段TaxItem.title的值为null,导致placeOrder突变失败并出现内部服务器错误的问题。 现在,字段始终会返回有效值,以确保成功下订单。
  • LYNX-702: EstimateTotals:虚拟产品类型的折扣为Null
    • 修复注释:解决了将折扣代码应用于包含虚拟产品的购物车时,estimateTotal突变为折扣返回null的问题。
  • LYNX-703:捆绑产品未返回正确的折扣百分比和金额
    • 修复注释:为目录项目价格引入了“catalog_discount”和“row_catalog_discount”新属性,以便在行和单个项目级别显示正确的折扣金额和百分比。
  • LYNX-714:产品级别的礼品消息配置
    • 修复注释:修复了全局禁用时未在产品级别应用礼品消息的问题。 现在,如果为特定产品启用了礼品消息,则可使用updateCartItems突变成功添加这些消息,并且可以正确保存并反映这些消息。
  • LYNX-717:从购物车项目中删除礼品包装时出现问题
    • 修复注释:修复了使用updateCartItems突变从购物车项中删除礼品包装无法按预期工作的问题。 现在,正确应用和删除礼品包装功能且没有错误。
  • LYNX-751:匹配的注册客户功能在Boilerplate中不起作用,需要为来宾启用trackViewedProduct突变。
    • 修复注释:公开trackViewedProduct突变以跟踪客户和来宾的产品查看事件
  • LYNX-757:如果没有应用活动的购物车规则,cart.rules查询返回错误而不是空数组
    • 修复注释:修复了cart.rules查询以返回空数组,而不是在没有应用活动购物车规则时返回错误。
  • LYNX-758:检索购物车物品的礼品包装时出现问题
    • 修复注释:更新了检索逻辑,以便在全局禁用但在产品级别启用时返回购物车商品的礼品包装选项
  • LYNX-778:安装adobe-commerce/storefront-compatibility软件包时,使用OPTIONS方法的GraphQL调用返回500响应代码
    • 修复注释:修复了在安装adobe-commerce/storefront-compatibility包时,使用OPTIONS方法的GraphQL调用返回500内部服务器错误的问题。 现在,端点可按预期正确返回200/204响应。

其他开发人员工具

付款/付款方式、订单

  • AC-13699:保存供以后使用的纸面付款流信用卡详细信息未显示在存储的付款方式页面上

    • 固定备注:先前保存供以后使用的纸面付款流信用卡详细信息未显示在存储的付款方法页面上,而现在固定的信用卡详细信息显示在存储的付款方法页面上。
    • GitHub代码贡献https://github.com/magento/magento2/commit/96dec499

支付

  • AC-13414:信用卡(Payflow链接)付款不起作用

  • ACP2E-2841:每次单击“查看事务”屏幕上的“提取”按钮时,Payflow都会创建新事务

    • 修复注释:现在,每次单击“查看交易”屏幕上的提取按钮时,系统都会正确提取交易信息,而不会创建新的付款交易。 以前,单击“提取”按钮会错误地为已支付的订单创建新的支付交易记录。
    • GitHub代码贡献https://github.com/magento/magento2/commit/b2286ecf
  • ACP2E-3028:加拿大Paypal商家帐户的PDP中未显示Paylater消息

    • 修复说明:当可以根据帐户帐单地址或装运确定买方所在国家/地区时,系统现在会在产品详细信息页面(PDP)上正确显示加拿大PayPal商家帐户的PayLater消息。 以前,由于缺少参数,不会显示PayLater消息,这会导致浏览器控制台中出现错误。
    • GitHub代码贡献https://github.com/magento/magento2/commit/6a185204
  • ACP2E-3143: PayPal订单退款导致贷项通知单重复

  • ACP2E-3163:购物车价格规则不适用于Paypal

  • ACP2E-3208: [Cloud]具有特定角色的用户无法登录

性能

绩效、提升

  • ACP2E-2617:销售规则索引器已停止运行
    • 修复注释:系统现在可以成功完成销售规则索引器,即使存在大量合并的过滤器组,从而确保购物车规则条件按预期应用于购物车。 以前,当存在大量合并的过滤器组时,销售规则索引器将无法完成,从而导致出现错误消息并阻止应用购物车规则条件。

定价

产品

  • AC-10535:正在将可配置关联产品名称中的特殊字符转换为HTML实体。

  • AC-10947: ProductRepository函数GetById未创建正确的缓存密钥

    • 修复注释:系统现在可以在ProductRepository的函数GetById中正确创建缓存密钥,无论存储ID是以字符串还是整数形式传递。 这样可以确保在后续调用时从内存中检索产品,从而提高性能。 以前,每次调用函数时,系统都会从数据库中检索产品,即使参数相同,这是由于创建缓存键不正确造成的。
    • GitHub问题https://github.com/magento/magento2/issues/38384
    • GitHub代码贡献https://github.com/magento/magento2/pull/38433
  • AC-11992: [问题] [MFTF]已添加AdminClickAddOptionForBundleItemsActionGroup

  • AC-13173: [问题]修复PHPDoc块中的拼写错误

  • AC-13423: [问题]修复了Magento中损坏的捆绑包和可下载的产品页布局>= 2.4.7

  • AC-5969: AlertProcessor — 参数#2($storeId)必须是int类型,并且给定字符串

  • ACP2E-2944: [Cloud] addFilterToMap函数无法用于某些列

  • ACP2E-3471:类别中的[Cloud]产品 — 添加产品 — 分配 — 选择全部

    • 修复注释:用户现在可以使用切换功能选择或取消选择产品。

促销活动

  • ACP2E-2602:从邀请创建帐户时客户属性不可见

  • ACP2E-2627:未释放每个优惠券限制使用次数的优惠券代码以进行取消订单的付款

    • 修复注释:系统现在会在创建或取消订单后立即更新优惠券使用情况,并将规则使用情况添加到队列中,以防止潜在的死锁。 这可确保释放具有“每张优惠券的使用次数”限制的优惠券代码,并且可在因付款失败而取消订单时重复使用。 以前,系统不会发布优惠券代码以供在此类情况下重用,从而导致出现错误消息,指出优惠券代码无效。
    • GitHub代码贡献https://github.com/magento/magento2/commit/c971859e
  • ACP2E-2811: [Cloud]重新索引目录规则产品索引器引发SQLSTATE[HY000]:常规错误: 2006 MySQL服务器已消失。

    • 修复注释:系统现在可以正确处理“Magento\CatalogRule\Model\Indexer\IndexBuilder”的di.xml中的自定义“batchCount”值,从而防止在重新索引目录规则产品索引器期间由于大型目录的批处理大小不正确而出现SQL错误,如“常规错误: 2006 MySQL服务器已消失”
    • GitHub代码贡献https://github.com/magento/magento2/commit/b2286ecf
  • ACP2E-2926:[访客客户区段的CLOUD]购物车价格规则未在购物车上应用折扣

    • 修复注释:现在,即使规则未使用优惠券,系统仍会为访客客户区段正确应用购物车价格规则,从而确保将适当的折扣应用于购物车。 以前,除非购物车价格规则使用优惠券,否则不会将折扣应用于访客客户区段的购物车。
  • ACP2E-3024:相关产品规则的“要匹配的产品”选项卡中缺少“类型”属性

    • 修复注释:“Type”属性现在在“相关产品规则”模块的“要匹配的产品”选项卡中作为筛选选项提供,从而允许更精确的规则定义。 以前,“要匹配的产品”选项卡中缺少此属性,从而限制了创建准确匹配条件的能力。
  • ACP2E-3139:具有折扣数量步骤(购买X)属性的销售规则导致不应用其他规则

  • ACP2E-3331:购物车价格规则 — 高级销售规则模块出现性能问题

    • 修复注释:为AdvancedSalesRule筛选器添加了缺失的数据库索引
  • ACP2E-3332:发布具有固定金额折扣和“最大数量折扣应用于”的销售规则

    • 修复注释:修复了购物车规则折扣的问题,当购物车配置为对有限数量的产品应用固定金额折扣时。 以前,“应用的最大数量折扣”值用于计算购物车中当前项目的价格,而不仅仅用于计算规则的折扣。
    • GitHub代码贡献https://github.com/magento/magento2/commit/581b7ef1
  • ACP2E-3342: [CLOUD] Magento升级导致优惠券区分大小写

    • 修复注释:在修复之前,您需要键入与代码配置完全相同的优惠券代码,并需要考虑大写或小写。 现在,无论代码配置是大写还是小写,都将在后端验证优惠券。
  • ACP2E-3349:购物车规则“整个购物车的固定金额折扣” 操作错误地应用折扣

    • 修复说明:在从管理区域创建订单时使用优惠券代码时,无论使用大写还是小写,都会正确验证优惠券代码。 以前,如果优惠券代码与配置的购物车规则代码的字母大小写不符,则不会验证优惠券代码。
    • GitHub代码贡献https://github.com/magento/magento2/commit/581b7ef1
  • ACP2E-3374:在后端,使用产品属性的默认存储值(而不是预期的管理员值)

  • ACP2E-3377:添加捆绑包产品时,购物车规则“整个购物车的固定金额折扣”操作应用折扣不正确

    • 修复注释:未正确为捆绑包产品应用固定数量的购物车规则。 现在,在计算总折扣金额时,会考虑捆绑子产品,从而生成正确的折扣计算。
    • GitHub代码贡献https://github.com/magento/magento2/commit/1366ae5e
  • ACP2E-3403:购物车价格规则错误计算折扣

  • ACP2E-3406:规则条件中的嵌套类别未显示

  • ACP2E-3432: usage_limit和uses_per_customer未在salesrule_coupon表中更新

    • 修复注释:更新购物车价格规则中每张优惠券的使用次数和每客户的使用次数将影响现有的自动生成优惠券。 以前,新值只影响新优惠券
    • GitHub代码贡献https://github.com/magento/magento2/commit/88660e79
  • ACP2E-3456:当购物车使用“等于或大于”条件时,购物车价格规则不考虑父类别。

  • ACP2E-3463:优先级折扣计算无效

    • 固定备注:在适用于整个购物车折扣类型的固定金额的情况下,未正确计算先前促销已折扣的购物车项目的金额。 现在,折扣总和恰当。
    • GitHub代码贡献https://github.com/magento/magento2/commit/078c387e
  • ACP2E-3472: [CLOUD]配送计算未考虑购物车规则

  • ACP2E-3491:发票的购物车规则SKU条件失败。

  • ACP2E-3498:与折扣/特价产品同时应用多个购物车价格规则时,折扣值不正确

    • 修复注释:在修复之前,如果应用了多个购物车规则,则无法正确应用整个购物车规则的固定金额。 现在,可以正确应用固定金额折扣购物车规则。
    • GitHub代码贡献https://github.com/magento/magento2/commit/1984c61c

返回

  • ACP2E-3330: [CLOUD]受限管理员用户可以看到返回菜单和按钮
    • 修复注释:受限管理员用户现在无权访问与RMA相关的控件(菜单和按钮)。
      以前受限制的管理员用户可以看到返回菜单和按钮。
  • ACP2E-3443:刷新屏幕时返回屏幕混乱
    • 修复注释:用户可以刷新页面而不会遇到屏幕失真。

SEO

  • AC-11907:添加带有重音符号的URL重写会导致无限加载

  • ACP2E-2641:第三级类别的多存储错误类别URL重写

  • ACP2E-2770:“产品名称”字段中的双字节字符(特殊字符)会阻止在后端创建产品

    • 修复注释:添加了新设置,允许您对产品URL应用音译或不应用音译。 可在以下位置进行设置:存储>配置>目录>目录>搜索引擎优化:“为产品URL应用音译”
    • GitHub代码贡献https://github.com/magento/magento2/commit/b2286ecf
  • ACP2E-3383:在一个商店组中创建了多个商店的url_rewrite条目不正确

    • 修复注释:在修复之前,您只能在编辑产品时生成网站级别的URL重写。 修复后,引入了一个新设置(存储>配置>目录>目录>搜索引擎优化,包含选项“存储视图”、“网站”的“产品URL重写范围”),允许您在存储视图或网站级别生成URL重写。
    • GitHub代码贡献https://github.com/magento/magento2/commit/2d627301

销售

  • AC-13751:如果已应用第一个购物车规则,则未应用第二个购物车价格规则
  • AC-13053:正在获取“输入搜索词并重试”。 2.4.8-beta1中storefront的“高级搜索”页面出错

    • 修复注释:当产品属性设置为“否”时,系统现在会在“高级搜索”页面上正确显示搜索结果。 以前,将产品属性设置为“否”并执行搜索会导致出现错误消息“输入搜索词并重试”。
    • GitHub代码贡献https://github.com/magento/magento2/commit/3ea26621
  • AC-13721: magento/module-open-search依赖于不存在的opensearch-php分支

  • ACP2E-3362: search_query表大时,对加载时间前端影响较大

安全性

  • AC-11855: [问题]缺少字体CSP播放器弹出窗口

    • 修复注释:系统现在允许加载字体“https://www.paypalobjects.com/webstatic/mktg/2014design/font/PP-Sans/PayPalSansBig-Medium.woff'”,而不违反内容安全策略指令,从而确保正确显示Paylater弹出窗口。 以前,由于违反Content Security Policy指令而拒绝加载字体,这会导致Paylater弹出窗口的显示问题。
    • GitHub问题https://github.com/magento/magento2/issues/38624
    • GitHub代码贡献https://github.com/magento/magento2/pull/37401
  • AC-12035: [问题]更新js.js DOM文本将重新解释为HTML

    • 修复注释:通过使用innerText,可以避免注入HTML的风险,因为这些属性会自动转义提供的文本中的任何HTML特殊字符。 此修复将输入视为纯文本而不是解释的HTML,有助于防止跨站点脚本(XSS)漏洞。
    • GitHub问题https://github.com/magento/magento2/issues/38767
  • ACP2E-3273: ReCaptcha V2在德语签出时显示不正确

    • 修复注释:以前,对于长单词语言(如德语),签出时电子邮件地址下方的recaptcha显示为无样式。 之后,recaptcha看起来与其他区域中的所有recaptcha元素相同。
    • GitHub代码贡献https://github.com/magento/magento2/commit/7377de59
  • ACP2E-3300:管理员登录时的验证码不需要与某些用户进行交互

配送

暂存和预览

  • ACP2E-2901:如果最初是通过运行更新添加的,则未保存计划的更新设置

    • 修复注释:现在,在当前运行的更新中修改产品属性时,系统会正确清除后续计划更新中的产品属性值。 以前,当通过运行的计划更新修改产品属性时,无法在创建新的计划更新时清除此类属性值,从而要求用户在创建后重新编辑它们。
  • ACP2E-2999:起始日期和截止日期的购物车价格规则问题未与暂存更新同步

    • 修复注释:根据购物车价格规则暂存的更新保存日期。
  • ACP2E-3104:暂存预览中出现JS错误

    • 修复注释:现在已成功加载form-mini-stub.js文件,并且开发人员工具中没有任何Js语法错误。
  • ACP2E-3162:无法更新产品特价暂存内容

    • 修复注释:系统现在允许在价格更新促销活动启动后编辑其结束日期,以确保用户可以对其促销活动进行必要的调整。 以前,在尝试更新活动营销活动的结束日期时引发错误,从而阻止用户进行更改。
  • ACP2E-3453:使用唯一的自定义类别属性时无法更新计划更新

目标选择

税金

测试框架

  • AC-11654:由于JSON列类型,集成测试未通过testDbSchemaUpToDate

    • 修复注释:在集成测试期间,系统现在可以正确识别数据库架构中的JSON列类型,从而防止由于数据库架构与声明性架构不匹配而导致的测试失败。 以前,系统错误地将JSON列类型识别为MariaDB中的LONGTEXT,从而导致集成测试失败。
    • GitHub代码贡献https://github.com/magento/magento2/commit/ef81f5a2
  • AC-13362: [问题] PHPDoc更正拼写

  • AC-13478: MAGETWO-95118:检查会话过期后永久购物车的行为

  • AC-13716:集成测试失败Magento\NegotiableQuote\Controller\Quote\DownloadTest::testCompanyManagerDownloadWithNQSubPermission

  • AC-13722: [数据库比较]如果数据库包含有关无条件的Target规则的记录,则出现严重错误

    • 修复注释:以前,如果数据库包含有关目标规则的记录,且没有任何条件,则会收到严重错误,但在修复数据库比较工具成功通过且没有严重错误之后。
  • AC-13848:修复静态测试以启用3d方扩展的使用

  • ACP2E-3334:在执行期间或日志中未显示[内部]夹具应用失败

  • ACP2E-3458: [MFTF] StorefrontCheckoutProcessForQuoteWithoutNegotiatedPricesTest

UI框架

1d4eef6c-fef1-4e61-85eb-b58d7b9ac29f