[僅限PaaS]{class="badge informative" title="僅適用於雲端專案(Adobe管理的PaaS基礎結構)和內部部署專案的Adobe Commerce 。"}
Adobe Commerce 2.4.3發行說明
Adobe Commerce 2.4.3引進了效能和安全性的增強功能,以及重要的平台改善。 安全性增強功能包括擴大 reCAPTCHA 覆蓋範圍和納入內建速率限制。 核心撰寫器相依性和協力廠商程式庫已升級至與PHP 8.x相容的最新版本。
此版本包括 370 多項核心代碼的新修正和 33 項安全性增強功能。 Adobe Systems Commerce 2.4.2 發行說明中識別的所有已知問題均已在此版本中修正。
如需關於 Adobe Systems Commerce 2.4.2-p2 的信息,請參閱 Adobe Systems Commerce 2.4.2-p2 發行說明 。
其他發行資訊
雖然這些功能的代碼與季度版本捆綁在一起,但其中一些專案(例如,B2B、頁面 Builder 和 Progressive Web Application (PWA) Studio)也是獨立發佈的。 這些專案的 Bug 修復記錄在每個專案的文件中提供的特定於專案的單獨發佈資訊中。
套用MC-43048__set_rate_limits__2.4.3.patch以解決API速率限制問題
此Hotfix針對Web API無法處理陣列中包含超過20個專案的請求問題提供解決方案。 此問題會影響執行Magento Open Source 2.4.3、Adobe Commerce 2.4.3或2.3.7-p1的部署。 在這些版本中新增內建速率限制,以防止拒絕服務(DoS)攻擊,且預設上限設為20。 此修補程式將預設限制回覆為較高的值。 如果您懷疑您的存放區遭受DoS攻擊,Adobe建議將預設輸入限制降低至較低的值,以限制可請求的資源數量。 檢視Web API無法處理陣列知識庫文章中超過20個專案的要求。
套用AC-384__Fix_Incompatible_PHP_Method__2.4.3_ce.patch以解決升級時發生的PHP嚴重錯誤
升級至Adobe Commerce 2.4.3期間可能會發生下列嚴重錯誤:
PHP Fatal error: Uncaught Error: Call to undefined function Magento\Framework\Filesystem\Directory\str_contains() in [...]/magento/vendor/magento/framework/Filesystem/Directory/DenyListPathValidator.php:74
此錯誤是由於使用了 str_contains
PHP 8.x 函數而導致的。 Adobe Commerce 2.4.3不支援PHP 8.x。此Hotfix會以支援的PHP 7.x函式取代此函式。 請參閱 Adobe Systems Commerce 升級 2.4.3、2.3.7-p1 PHP 致命錯誤修補程式知識庫文章。
AC-3022.patch
套用繼續提供DHL作為承運商
DHL 已推出 綱要 6.2 版,並將在不久的將來棄用綱要 6.0 版。 Adobe Systems Commerce 2.4.4 及之前支援 DHL 整合的版本僅支援 6.0 版。部署這些版本的商家應儘早申請 AC-3022.patch
繼續提供DHL作為運輸承運人。 有關下載和安裝修補程序的資訊,請參閱套用修補程式以繼續提供 DHL 作為承運商知識庫文章。
突出
Look此版本中的下列重點介紹。
大幅增強安全性
此版本包含33項安全性修正和平台安全性改善。 其中許多安全性修正已反向移植至2.4.2-p2和2.3.7-p1。
協助關閉遠端程式碼執行(RCE)和跨網站指令碼(XSS)弱點的33項安全性增強功能
目前尚未發生與這些問題相關的已確認攻擊。 但是,某些漏洞可能會被用來存取客戶資訊或接管管理員工作階段。 這些問題大多需要攻擊者先取得Admin的存取權。 因此,我們提醒您採取一切必要步驟來保護您的管理員,包括但不限於:IP允許清單、雙因素驗證、使用VPN、使用唯一位置而非/admin
以及良好的密碼衛生。 如需這些已修正問題的討論,請參閱Adobe安全性公告。
其他安全性增強功能
此版本的安全性改善專案可改善對最新安全性最佳實務的合規性,包括:
-
新的Composer外掛程式 有助於防止相依性混淆,並識別與公用套件存放庫上的內部套件具有相同名稱的惡意套件。 請參閱Adobe發行包含2.4.3版部落格的新撰寫器外掛程式。
-
現已內建於API,以防止拒絕服務(DoS)攻擊。 Web API現在會限制使用者端可請求的資源大小或數量(預設上限設為20,並可根據業務需求設定為不同的值)。 請參閱速率限制,以取得設定這些限制的資訊。
-
ReCAPTCHA涵蓋範圍已延伸 以包含:
-
具有相應 HTML 頁面的 Web API 通過 ReCAPTCHA 進行涵蓋。 (這不包括由整合存取的 Web API。)ReCAPTCHA 覆蓋率可保護端點免受垃圾郵件攻擊。 當使用 OAuth 的 協力廠商 集成服務訪問 Web API 時,ReCAPTCHA 將被禁用。
-
下單店面頁面和付款相關的 Web API。 這些頁面的 ReCAPTCHA 保護預設為停用,可從管理員啟用。 此覆蓋範圍增加了一種反暴力機制,以保護商店免受梳理攻擊。
-
基礎架構改良
此版本包含可改善框架品質的增強功能,以及下列功能區域:
-
客戶帳戶
-
目錄
-
CMS
-
OMS
-
匯入/匯出
-
促銷活動和目標定位
-
購物車與結帳
-
B2B
-
測試和預覽
包含PayPal的部署現在支援 PayPal Pay Later。 此功能可讓購物者以雙週分期付款的方式支付訂單,而不需在購買時支付全額。
新use_application_lock
索引模式。 該 use_application_lock
模式允許您通過使用環境變數或配置文件 app/etc/env.php
來啟用重新索引。 啟用此模式後,您就不需要在失敗後手動重設索引器。 請參閱使用應用程式鎖定模式重新索引處理序。
平台增強功能
2.4.3版尚未與PHP 8.x相容,但後續的平台升級使我們更接近未來與PHP 8.x的相容性。
-
核心撰寫器相依性和協力廠商程式庫已升級至與PHP 8.x相容的最新版本。
-
KnockoutJS 資料庫已經升級到 v3.5.1 (最新版本)。
-
已棄用的 TinyMCE v3 資料庫 已被移除。
Magento_Tinymce3Banner
與TinyMCE v3.x相關的模組和MFTF測試已從Adobe Systems Commerce中刪除。 -
版本 2.4.3 已經過測試並確認與 Redis 6.0.12 相容。 (2.4.x 版仍與 Redis 5.x 相容。)
-
Laminas 資料庫 依賴項已升級到 PHP 8.x 相容版本。 已從檔中刪除
composer.json
一些冗餘依賴項。 Adobe Systems Commerce 2.4.3 使用 Laminas 3.4.0。
效能增強
此版本包含可縮短產品價格和目錄規則索引器的索引時間的增強功能。 商家現在可以從客戶群組或共享目錄中排除網站,從而減少索引記錄數量並縮短索引時間。
即時搜尋
🔗由 Adobe Sensei 提供支持的即時Search通過使用人工情報和機器學習算法來執行聚合訪客資料的深入分析,從而提供直觀的搜尋體驗。 請參閱即時搜尋發行說明。
GraphQL
此發行版本新增GraphQL對下列功能的支援:
-
共用目錄
-
願望清單。 addWishlistItemsToCart突變會將專案從指定的希望清單移至客戶的購物車。
-
禮品登記簿。 涵蓋的任務包括:
-
可協商的引號。 檢視
negotiableQuote
和negotiableQuotes
查詢。新的變動包括:
-
共用路由。 路由 查詢 和 RoutableInterface 支持在產品、類別和 CMS 頁面上路由請求。查詢
urlResolver
已遭到廢止,其功能已由route
查詢 取代。
B2B
2.4.3版引入B2B v1.3.2。此版本包含多項錯誤修正。 請參閱B2B發行說明。
頁面產生器
頁面產生器現在可作為Magento Open Source中的套件擴充功能使用。 現在是 Adobe Systems Commerce 2.4.3 和 Magento Open Source 2.4.3 的預設內容编辑工具。它可以將所見即所得編輯者替換為任何協力廠商模組。
頁面生成器取代了以下管理區域中的 TinyMCE 編輯者:
- 内容管理系統頁面
- 內容管理系統區塊
- 類別說明
- 產品說明
在TinyMCE中創建的所有內容都已作為HTML遷移到頁面生成器中。
PWA Studio
有關增強功能和錯誤修復的資訊,請參閱 PWA Studio版本。 有關PWA Studio版本及其兼容版本的清單,請參閱 兼容性 。
升級相容性工具
升級相容性工具的範圍已根據社群的意見展開。 加入我們的#upgrade-compatibility-tool Slack頻道,取得Adobe產品團隊和社群的支援,並幫助指引工具的未來方向。
Cloud Managed Services更新
此版本包含我們對Amazon Simple Storage Service (AWS S3)和Amazon Aurora雲端受管服務的支援增強功能。 它為AWS ElastiCache、AWS Elasticsearch和AWS Managed Queue (Rabbit MQ)提供經認證的支援。 (我們已測試這些服務的功能、效能,以及與Adobe Commerce的整合。)
Adobe Stock整合
此版本包含Adobe Stock整合v2.1.1。
廠商開發的擴充功能
請參閱下列主題,瞭解此版本功能和變更的更新:
已修正的問題
我們已修正2.4.3核心程式碼中的數百個問題。
安裝、升級、部署
bin/magento setup:db:status
命令現在會傳回訊息,指出成功升級後一切都是最新狀態。 以前,應用程式顯示這個錯誤:Declarative Schema is not up to date
。
- 現在,當建立新的可設定產品失敗時,會在表單重新載入時保留設定值。 先前,表單重新載入期間會遺失值,而應用程式會顯示此錯誤:
The value specified in the URL Key field would generate a URL that already exists
。 GitHub-32102
- 當您運行
bin/magento setup:upgrade
從具有 Redis 的 Magento Open Source 部署升級到 Adobe Systems Commerce 時,該應用程式不再引發異常。
- 以前購物車創建的價格規則現在顯示在内容暫存儀錶板上,頁面部署從Magento Open Source升級到Adobe Systems商務。
- 在Galera Cluster上運行的部署現在支援更多客戶。 GitHub-31038
- 現在,管理員可以在安裝應用程式時成功
—use-rewrites=0
登錄到部署,並在 中core_config_data_table
使用該選項或web/seo/use_rewrites
設置為 0。GitHub-32100
- 更新了
sortOrder
的AsyncCssPlugin
載入。 應用程式現在會在JsFooterPlugin
之前載入AsyncCssPlugin
。 GitHub-30882
Magento\Config\Model\Config\PathValidator
現在會檢查顯示路徑以判斷專案是否存在,如果專案具有設定路徑,則會改用config.xml
路徑進行驗證。 GitHub-27678
- 使用Grunt或伺服器端編譯編譯來編譯較少檔案現在會產生相同的結果。 先前版本。 使用Grunt編譯時,延伸
_extends.less
中其他.abs- styles
的.abs- styles
無法正確輸出。 這會導致生產部署與開發部署之間的差異。 GitHub-7231
管理GWS
- 管理員 GWS 現在使用管理員集合中的 SQL 條件值
website_id
供int
具有自定義許可權的管理員使用。
Adobe Stock整合
- 當 API 金鑰(用戶端 ID)和用戶端密鑰 未設置 頁面 時,應用程式 現在會顯示一條信息性消息和連結 到管理員存儲>配置>進階>系統 Search頁面,以便Adobe Stock。 之前,應用程式會显示此錯誤:
We couldn't find any records
而且沒有連結。
後端
- 具有受限訪問許可權的管理員(例如,僅分配了一個網站的訪問許可權)無法再編輯設置為全域範圍的類別。
- 產生的系統報告(系統 > 支援 > 系統報告)現在已正確呈現。 之前,報表內容不會對齊。
- 當套件產品建立期間啟用 動態價格 設定時,應用程式現在會依預期關閉 價格 欄位的驗證。 先前,啟用 動態價格 設定時,應用程式在您從 價格 欄位中移除值時擲回驗證錯誤。 GitHub-26214
- 當部署中的管理員URL與預設網站URL不同時,無限重新導向不再發生,應用程式會設定為可從兩個URL存取。
套裝產品
- 您現在可以使用
addProductsToCart
突變,將包含多個核取方塊選項的組合產品新增到購物車中。
- 現在,使用暫存表格執行套件產品的價格索引,可避免鎖定資料庫表格。 以前,應用程式使用實體表格,導致鎖定表格。
- 套件組合專案的價格現在可以設為0.00。先前,當您在設定價格為0.00之後返回編輯頁面時,價格會傳回其預設值。 GitHub-32383
- 現在,如果價格在訂購之前已變更,則包含搭售產品的訂單的訂單詳細資料會顯示搭售產品的正確價格。
- 現在,會根據其子產品的庫存狀態來更新套件組合產品庫存狀態。 先前,當從產品中移除一個選項時,套件組合產品會顯示為無庫存,且套件組合產品具有兩個具有相同SKU的選項。
- 將套件產品移至其他屬性群組後,管理員現在可以變更套件產品
Shipment Type
屬性的值。 以前,如果此屬性被移動到屬性集中預設群組以外的屬性群組,則一律會以Together
值儲存。
- GraphQL
setGuestEmailOnCart
突變現在可以正確更新來賓電子郵件。 以前,報價和報價地址表格不會更新。
- 透過REST API呼叫新增、移除或更新子產品至套件組合產品現在會如預期觸發重新索引。 以前,這些動作不會觸發重新索引,因此,在執行手動重新索引之前,捆綁產品不會變更其庫存狀態。
- 應用程式現在會顯示具有層級價格的套件組合產品的正確價格範圍。 GitHub-30284
- 套裝選項的價格變更後,應用程式現在會在購物車頁面和結帳工作流程的出貨步驟中顯示相同的總價。
- 您現在可以從客戶購物車存取套件組合產品以成功設定該產品。 以往, 「設定產品」頁面從未完全載入,且您無法儲存設定。
- 商戶現在可以在多商店部署的每個商店檢視上,為套件產品指定唯一價格。 網站特定價格儲存在
catalog_product_bundle_selection_price
表格中。 先前,即使當 商店 > 組態 > 目錄 > 目錄 > 價格 > 目錄價格範圍 設定為Website
,應用程式也不會將套件組合產品的價格設定在網站範圍上。catalog_product_bundle_selection_price
中未儲存任何網站特定價格。 GitHub-12584
- 當停用 動態定價 時,組合產品的商業發票現在會顯示相關簡單產品的正確數量。 以前,與組合產品相關聯的簡單產品具有父產品的數量,而不是組合產品的數量)。 GitHub-30802
updateProductsInWishlist
突變現在已成功更新屬於希望清單中組合產品的專案。 以前,這個變異不是更新希望清單專案,而是刪除該專案並建立新的專案,從而變更了專案ID。
- 使用
POST /V1/product/:sku
端點建立或更新套件組合產品時,您現在可以依照預期設定required_options
和has_options
套件組合屬性。 以前,這些自訂屬性設定為0 (零),儘管努力將其設為1 (一)。
- 先前遺失的套件產品資料現在會納入測試程式。 如此可解決當購物者從產品清單頁面購買套裝產品而不是直接從產品頁面新增產品時,產品行為的不一致問題。
緩存
- 該文件
varnish6.vcl
已更新為略過客戶頁面的快取。
驗證碼
- 現在,驗證碼可正確驗證購物者提供的資料,且購物者多次嘗試透過PayPal Payflow Pro結帳失敗後,驗證碼欄位現在會如預期般顯示。
- 驗證碼驗證不會在結帳工作流程的付款頁面上隨機失敗。
- 在您超過失敗的完成嘗試次數後,應用程式現在會如預期顯示驗證碼欄位。 以前,雖然應用程式提示您再次嘗試驗證碼質詢,它不會顯示驗證碼欄位。
- 驗證碼現在可在結帳頁面上如預期運作。 以前,在購物者正確回答驗證碼質詢後,結帳上的載入器頁面永遠不會完成,並且應用程式顯示此錯誤:
captchaData[formId] is undefined
。 (僅當購物者使用之前訪問運行 2.3.5-p1 的部署的同一瀏覽器時,才會發生此錯誤。
_.isEmpty()
簽入defaultCaptcha.js
檔現在已成功完成。 以前,這些檢查未完成,因此,簽出頁面升級后無法載入。 GitHub-31641
購物車和結帳
- 現在,在購物車中轉換和更新產品數量時,應用程式會帳戶特定于區域設置的小数定位符。
- 訂單不再省略提供的客戶名稱及其送貨地址。 以前省略了名稱,因為
same_as_billing
資料庫中未保存標幟。
- 現在,當您在 購物車 中编辑產品時,禮品註冊的連結會按預期持續存在。 先前,當您按一下 更新購物車 按鈕時,這些連結會消失。
- 現在,在刪除多個產品後,面向消費者
quoteItemCleaner
的所有佇列消息的狀態都會更改為complete
“按預期”。 之前,此消費者只有一則訊息將其狀態變更為complete
,其餘訊息則將其狀態變更為in progress
。
- 應用程式現在只有在購物者按一下 下訂單 按鈕時,才會顯示相關區塊中的條款與條件驗證訊息。 以前,當購物者在結帳工作流程中變更付款方式時,應用程式會在「套用折扣代碼」區塊中顯示此訊息:
The order wasn't placed. First, agree to the terms and conditions, then try placing your order again
。
- 從「排程更新」預覽新增套件產品至購物車並按一下購物車後,您現在會如預期重新導向至結帳頁面。 GitHub-447
- 如果購物者無法按兩下“ 更新 ”按鈕並返回到發貨步驟,則應用程式現在會放棄對結帳付款步驟上的帳單地址窗體所做的更改。
- 當購物者添加無效產品數量並按兩下“管理購物車”頁面上的“ 更新物料和數量 ”按鈕時,應用程式現在會显示一條信息性錯誤消息,並且不會更新產品數量。 以前,應用程式升級了產品數量,並且不會顯示錯誤消息。 GitHub-459
- 具有可自定義選項
(File)
的產品現在在整個多配送結帳程式中按預期包含活動連結。 之前,此連結會遺失。 GitHub-31095
- 管理員購物車現在以支持多種貨幣的商店的正確貨幣顯示產品價格。 以前,價格多次轉換為指定的貨幣 - 首先,當產品從店面添加到購物車時,然後在隨後在管理員上呈現訂單時再次轉換。
- 現在,在管理員完成由店面上的購物者創建的管理員訂單後,應用程式會按預期清空購物車。 以前,當客戶在管理員完成訂單后重新登錄時,店面購物車仍包含訂單內容。 GitHub-30262
- 購物者現在可以將最低廣告價格 (MAP) 超過其正常產品價格的商品添加到其購物車。
- 購物者現在可以在使用多個地址結帳時從結帳工作流程成功更改其帳單位址。
- 客人創建的所有付費付款交易現在都保存到資料庫中,並按預期顯示在管理員中。 以前,資料庫中僅保存一小部分併發訂單,並且由於資料庫鎖定導致的超時,大多數訂單都丟失了。 GitHub-25862
- 現在,當客人將產品放入迷你購物車時,該應用程式可以正確顯示包含特殊字符的内聯歡迎消息。 之前,應用程式不會將產品新增至小型購物車或显示歡迎訊息。 GitHub-32250
- 現在啟用商店内傳遞時,結帳工作流程的送貨頁面成功載入。 之前,應用程式拋出JavaScript錯誤,並且運費結帳頁面未完全呈現。
- 將自變數新增至
itemResolvers
目錄di.xml
檔案。 因此,如果禁用可配置和分組產品模組,則結帳不再中斷。 GitHub-30860
- 應用程式現在在「管理員重新訂購」工作流程期間按預期顯示在「 付款和運輸資訊」 部分中的單選按鈕。 GitHub-30257
- 當購物車包含具有多個選項的捆綁產品時,應用程式現在可以正確應用購物車具有購物車級固定折扣的價格規則。 之前,購物車價格規則並未完全套用至訂單。 GitHub-30952
- 類別 清單 視圖上的「 新增到購物車 」按鈕現在可正常運作。 GitHub-32232
- 您現在可以使用 POST
/V1/carts/mine/items
將分組產品的自定義數量新增至購物車。 GitHub-26909
- 應用程式不再使用送貨地址填充結帳工作流程的帳單地址區域。 以前,當帳單地址的“ 州/省”欄位為空,並且送貨地址和帳單地址不同時,應用程式會使用送貨地址中的資訊填充帳單地址 州/省 字段。 GitHub-31608
目錄
- 「啟用數量增量」和「數量增量」屬性的 大量更新現在可如預期般運作。GitHub-29544
- 現在,您可以成功重複包含僅限 數值 SKU 的共享目錄。 之前,應用程式在您嘗試複製共用目錄時擲回錯誤,因為
\Magento\Catalog\Model\ProductIdLocator
類別無法正確搭配僅限數值的SKU運作。
- 當您與管理員啟用最近的產品同步化後,應用程式不會再擲回JavaScript錯誤。 以前,應用程式顯示這個JavaScript錯誤:
Cannot read property 'status' of undefined
。
- 自訂主題版面配置更新現在已按預期套用。 以前會忽略自訂佈景主題版面更新。
- 產品類別快取現在已由
cron
在indexer_update_all_views
執行期間如預期般清除。 先前,重新索引後「類別」頁面上的產品計數不正確。
- 現在,如果在商店檢視的產品更新REST API請求中未指定屬性,屬性值將保持不變。 以前,如果未指定屬性,應用程式會將屬性值重設為預設範圍值。
- 現在當產品由SKU篩選時,管理員產品格線(管理員 目錄 > 產品)會顯示正確的產品計數。
- 現在,當啟用類別許可權並將產品新增到CMS頁面時,應用程式會顯示準確的庫存狀態,並防止顯示指定客戶群組的價格。 過去,無論實際庫存狀態為何,所有產品都會顯示為無庫存。
- 「進階訂價客戶群組價格」區塊價格輸入欄位現在的最小寬度為5位數。 以前,在低解析度顯示器上,此欄位中只顯示兩個符號。
- 應用程式現在會在刪除產品後,成功刪除產品媒體影像。 先前,成功刪除產品後,產品媒體影像會保留在資料夾中。
- 當您在「管理員」中建立或編輯產品,然後建立「排程設計更新」時,頁面版面現在會依預期更新。 GitHub-32007
- 值為零的自訂產品屬性現在可以成功儲存為空白。 之前,應用程式不會將此值更新為空白。
- 自訂類別配置更新檔案現在會如預期套用至產品。 之前,更新檔案控制代碼(
catalog_category_view_*
)不符合產品控制代碼。 GitHub-27285
- 管理員產品清單的「固定產品稅金(FPT)」欄已停用排序。 之前,在排序FPT欄之後,無法重新載入產品頁面。
- 現在,當相符產品在每個網站上的價格不同時,頁面產生器產品Widget預覽可在多網站部署中如預期運作。
- 使用GET
/rest/V1/products/?searchCriteria[filterGroups]
在產品搜尋上依位置排序現在可如預期運作。 以前,產品集合沒有用於排序的欄位position
值。 GitHub-31591
- 管理員用戶現在可以在產品網格線的“名稱”和“SKU字段中看到兩次 空格。 以前,應用程式將多個空格摺疊為一個空間。
- 現在,當管理員上的可售數量為 0 時,產品在店面顯示為無存貨。 以前,這些產品在店面上列為有貨,應用程式顯示有效的 “添加到購物車 按鈕。 GitHub-31117
- 管理員現在可以從「管理客戶」頁面的「購物車」部分(“客戶活動”列)將具有可自定義選項
(File)
的產品添加到“已訂購專案”網格。 以前,應用程式未將專案加入清單,因為值在插入\Magento\Catalog\Model\Product\Type\AbstractType::_prepareOptions
之前格式不正確。
- 應用程式不再提示購物者為僅有一個選項的套件產品選取產品選項。
- 在建立新Widget期間,應用程式現在會在版面更新中顯示所有子類別(錨點和非錨點類別)。
- 當產品名稱僅針對一個存放區檢視更新時,
product
查詢不再覆寫多存放區部署中所有存放區檢視的預設值。 GitHub-31083
- 當您更改“管理員相關產品”、“追加銷售和交叉銷售”清單的每頁面值時,Adobe Systems Commerce 會按預期更新總頁數。 GitHub-31059
- 管理員現在可以按SKU將具有兩個或更多可自定義選項
(File)
的產品添加到訂單中。
- 當具有受限許可權的管理員將產品小組件添加到管理員中的 CMS 頁面時,應用程式不再引發錯誤。 以前,當管理員按下儲存 按鈕時,應用程式會拋出此錯誤:
We are sorry, an error has occurred while generating the content
。
- 現在,產品詳細資訊頁面將打開,並在啟用“使用日曆”時使用 上一個訂單的日期填充日期可自定義JavaScript選項。如果自定義日期選項值解析程式未根據當前配置設置值的格式,則現在將回退到備用格式。 以前,自定義日期選項值為空。
- 現在當產品缺貨時,應用程式購物車中只會显示一個錯誤。 以前,應用程式會顯示多餘訊息。 GitHub-27469
- 管理員現在可以按SKU將具有可自定義選項
(File)
的產品添加到訂單中。 GitHub-30285
- 您現在可以儲存產品與價格而無需指定
type_id
。 GitHub-13639
- 現在,當使用 REST
PUT /V1/products/:sku/links
請求將新的子產品與新的群組產品關聯時,組產品可以按預期在店面上使用。 以前,產品在執行bin/magento cron:run
后無法正確編製索引。
- 您無法再建立具有
NULL
SKU值的產品。 以前,您可以通過自定義導入程式或直接在資料庫中創建沒有SKU值的產品,但是當您嘗試從管理員編輯它時,應用程式拋出錯誤。 GitHub-27411、 GitHub-32525
- 向簡單產品添加所需的自定義選項不再在沒有警告的情況下將其從父複合產品中刪除。 應用程式現在會顯示資訊性警告,且不會儲存產品。 以前,應用程式保存產品更改,並且不顯示警告。 GitHub-30492
目錄規則
- 現在,當型錄價格規則套用至料號時,
products
查詢會傳回目前的值。 GitHub-26738
- 當購物車或目錄規則過期、停用或變成非使用中後,重新索引失敗時,現在會如預期刪除以
catalogrule_product__temp
開頭的暫存表格。 GitHub-22273
- 現在在
\Magento\CatalogRule\Model\Indexer\IndexBuilder::reindexById
和\Magento\CatalogRule\Model\Indexer\IndexBuilder::reindexByIds
中以相同方式套用時區。 GitHub-29549
CMS內容
- 現在,在啟用「 啟用前端調整大小 」配置設置時,上傳期間會按預期調整大型圖像的大小。
- 修正CMS頁面儲存控制器的錯誤處理。 以前,當在 事件 上
cms_page_prepare_save
拋出物件Error
時,應用程式將此對象addExceptionMessage
傳遞給函數,從而破壞其協定,因為此函數需要Exception
.使用addErrorMessage
函式新增錯誤訊息即可解決此問題。 GitHub-30149
- 您現在可以從CMS的「編輯頁面階層」索引標籤,將新頁面指派給多個節點。 以前,當您嘗試將頁面指派給節點時,會發生唯一限制違規。 GitHub-363
可設定的產品
- 當您按一下產品的可設定選項時,應用程式不會再複製產品影像庫中的產品縮圖。
- 當您從希望清單編輯可設定的產品時,應用程式顯示的設定快顯功能現在會在您按一下 確定 按鈕時按預期關閉。
- 此應用模組現在會針對僅包含一個可設定產品的訂單,正確產生商業發票。 GitHub-31143
- 購物者現在可以從非預設商店檢視將可設定產品新增到購物車。 先前,當非預設商店檢視上的購物者嘗試新增可設定的產品時,應用程式會顯示此錯誤:
Could not add item to cart. Please check required options and try again
。 GitHub-31660
內容安全性原則(CSP)
- 內容安全性原則現在支援透過
data: scheme
載入base64編碼的影像和字型。
cron
- Cron清理查詢已重構,以減少或消除以下效能問題:
cron
個工作仍卡在擱置狀態、MySQL查詢速度越來越慢,以及CPU使用量增加。 GitHub-26507
- 已處於狀態
running
超過24小時的cronjobs
現在會自動變更為狀態error
。 因此,該工作的新執行個體可以再次執行,並且當工作錯誤地保持設定為狀態running
時,您不需要手動變更工作狀態。 先前,如果cronjob
停滯在狀態running
中,應用程式會阻止啟動相同工作的新執行個體,而您必須手動變更工作狀態。 GitHub-8933
cron
個工作現在如預期般完成,且不再擲回此序列化錯誤:[Magento\Framework\DB\Adapter\DeadlockException]SQLSTATE[40001]: Serialization failure: 1213 Deadlock found when trying to get lock; try restarting transaction, query was: DELETE FROM cron_schedule WHERE (status = 'missed') AND (job_code in ('indexer_reindex_all_invalid', 'indexer_update_all_views', 'indexer_clean_all_changelogs')) AND (created_at < '2018-09-28 18:32:28')
。 GitHub-18409
indexer_update_all_views
個cron工作現在會在先前的失敗後如預期般執行。 失敗的執行在cron_schedule schedule
中標籤為失敗,後續執行不會自動失敗。 之前,cron_schedule
資料表填入擱置中的工作,且indexer_update_all_views
cron工作未執行。 GitHub-23054
cron
不再發生死結,因為cron
嘗試在群組重疊的大型部署中設定鎖定。 GitHub-8933
- 只有少數
cron
個工作執行後,cron_schedule
資料表上不再發生cron
死結。 GitHub-22438
自訂客戶屬性
- 店面客戶帳戶通訊錄上的 State 欄位現在已載入為,並保留為下拉式頁面元素。 Submit 按鈕現在已停用,直到所有頁面元素完全載入為止。 以前,應用程式在將此欄位呈現為下拉式元素之前會載入為文字方塊,購物者可以在文字欄位中輸入並儲存值,這稍後會在結帳時造成錯誤。
- 應用程式現在會在店面和管理員訂單頁面上正確顯示自訂客戶地址屬性。 以前,地址資訊區段中遺漏下拉式清單屬性的選定選項,而且輸入屬性的值包含屬性代碼。 GitHub-508
- 上傳檔案時,當您在「管理客戶地址」欄位中儲存具有檔案附件的客戶地址屬性時,應用程式不再擲回錯誤。 發生此狀況是因為控制器動作中遺失傳回陳述式。 之前,應用程式擲回此錯誤:
Something went wrong while saving the file
。
- REST GET購物車 API 呼叫現在會為帳單和送貨地址傳回正確的自定義屬性值。 以前,自訂地址屬性在「我的帳戶店面」頁面和「管理員」的訂單詳細資訊頁面中顯示不正確。
- 應用程式現在已成功處理包含輸入型別為
file (attachment)
之客戶位址屬性的檔案。 之前,應用程式在上傳附加檔案時擲回此錯誤:Something went wrong while saving the file
。
客戶
- 商店信用電子郵件現在會考量選取的範圍,並從正確的電子郵件地址傳送。
- 現在,按創建日期帳戶篩選會生成符合配置的時區設置並捕獲所有相關已創建帳戶的結果。
- 如果之前緩存了數據,則客戶網格篩選器現在對受限用戶使用正確的網站選項。 以前,客戶網格篩選器從緩存中檢索網站參數,併為受限使用者包含不正確的數據。
- 在多網站部署中刪除一個網站時,應用程式不再在管理員客戶頁面上引發異常。 以前,當管理員嘗試訪問綜合客戶清單時,應用程式不會顯示所有客戶並顯示此錯誤:
The website with id 2 that was requested wasn't found. Verify the website and try again
。
- 具有權限的管理員現在可以從客戶的“帳戶信息”標籤將客戶重新分配到不同的網站。
- 現在,在創建輸入類型為 .
(File)
的 客戶 地址屬性時,您可以成功上傳文件。 以前,當您嘗試上傳和保存文件時,應用程式拋出此錯誤:Something went wrong while saving the file
。
客户區段
- 應用程式現在可正常根據店面上的客戶區段显示相關產品。 先前,針對特定客戶區段建立相關產品規則時,應用程式不會顯示此區段。
- 當對應的客戶區段同時套用至來賓和註冊客戶時,現在會在購物車中顯示註冊客戶的動態區塊。 以前,應用程式只為來賓顯示區塊。
- 客戶區段現在會在管理員下訂單後自動更新。 先前,建立管理員訂單後,管理員使用者必須手動重新整理相關區段資料,方法是導覽至相關客戶區段並按一下 重新整理區段資料 按鈕。
- 應用程式現在可在購物車中為相關客戶区段中的所有客户显示動態区塊。 以前,即使客戶區段同時包含來賓和註冊客戶,來賓也不會看到封鎖。
- 已解決因使用該條件客戶
Product was Ordered
細分規則而導致的資料庫性能問題。
- 添加了 REST/SOAP API 的客戶區段事件觀察者。 因此,如果在通過 REST/SOAP API 下訂單時,區段中定義的條件匹配,客戶區段現在會按預期自動更新。
- 已為 GraphQL 請求添加了 客戶 區段 事件處理器。 以前,當在購物車價格規則條件中使用客戶區段時,購物車價格規則折扣不會套用到購物車。 GitHub-371
目錄
- 當購物者在結帳工作流程的送貨區段期間輸入無效的郵遞區號時,應用程式不會再擲回例外狀況。 GitHub-23371
可下載
- 當訂單包含可下載的產品和具有可下載選項的可設定產品時,應用程式現在會在新訂單電子郵件中顯示可下載產品的連結。 以前,應用程式顯示獨立可下載產品的連結,但不顯示具有可下載選項的可配置產品的連結。
動態區塊 (舊稱 橫幅)
- 動態區塊現在只顯示在指定的頁面上。 之前,若未指定動態區塊,應用程式會顯示所有頁面上指派給Widget的所有橫幅。
- 您現在可以儲存具有空白內容的動態區塊。
EAV
- 客戶地址屬性日期值現在以四位數格式儲存,而非兩位數格式。
電子郵件
- 「管理員重設密碼」頁面上的密碼重設連結現在可如預期運作。 先前,當自訂範本用於重設管理員密碼頁面時,當管理員按一下電子郵件內的連結時,應用程式會顯示此訊息:
Your password reset link has expired
。 發生此狀況是因為自訂電子郵件範本包含使用者ID的錯誤變數。
- 現在,在商店檢視層級啟用時,從管理員傳送客戶電子郵件會正常運作。 以往,在商店檢視層級啟用電子郵件通知設定(而非全域層級)時,應用程式不會傳送客戶電子郵件。
- 應用程式現在會依預期在多網站部署中傳送電子郵件,因為並非所有網站都啟用非同步電子郵件傳送。 先前,如果至少有一個網站停用此設定,則即使已啟用,也不會從任何網站傳送電子郵件。 發票、裝運和貸項通知單電子郵件也有類似的問題。 但是,已成功發送訂單註釋、發票註釋、裝運註釋和貸項通知單註釋電子郵件。 GitHub-31950
- 當您從管理員共享禮物註冊表時,應用程式發送的電子郵件現在包含到註冊表位置的有效連結。 以前採用此連結會導致 404 錯誤。 GitHub-504
- 發票和發票 PDF 現在包含與預期相同的捆綁產品價格。 以前,發票PDF包含不正確的套件組合產品價格。 GitHub-12856
- 已將字串轉型新增至電子郵件範本篩選方法,以確保傳回值為
string
。 先前,當未處於開發人員模式時攔截到例外狀況時,應用程式會傳回phrase
物件。 這進而觸發嚴重的Uncaught TypeError
。 GitHub-32671
- 在多網站部署中,當啟用非同步傳送時(商店 > 設定 > 銷售 > 銷售電子郵件 > 一般設定 > 非同步傳送),訂單確認電子郵件現在會如預期傳送。 GitHub-31950
- 現在,當客戶嘗試從「聯繫我們」表單發送電子郵件時發生異常時,應用程式會按預期記錄錯誤。 GitHub-23645
框架
- 現在,將檢查 Admin 中的父類是否與原始類和繼承的介面一起進行文檔塊註解。 之前,由於未檢查父類別,因此在Admin中執行任何與客戶相關的動作時觸發事件,都會導致錯誤。 應用程式在例外狀況記錄檔中記錄此錯誤:
report.CRITICAL: Method's return type must be specified using @return annotation.
。
- 在啟用Redis頁面快取的部署中,當Redis伺服器停止時,應用程式不再擲回嚴重錯誤。
- 現在,使用 啟用 應用程式 時
bin/magento config:set system/backup/functionality_enabled 1
,會遵循從 備份排除媒體資料夾備份 設定。以前,儘管有此設置,媒體檔案夾仍會備份,因為的/magento
路徑使用兩次 / 的格式不正確。
- 應用程式 現在會按預期翻譯所有可翻譯的字符串,供管理員購物車頁面使用。 以前,轉換載入發生得太晚,並跳過了訂閱控制器作預調度的所有觀察者。 GitHub-31849
- 當“以客戶 身份登錄”啟用擴展程序設置被禁用時, 建立 新 客戶帳戶頁面上的表單驗證現在可以成功工作。之前,應用程式會引發JavaScript錯誤。
- 現在,使用來移動資料庫表可以
bin/magento setup:db-schema:split-sales
按預期方式工作。 現在可以正確建立表格並填入資料。 先前,由於檢查資料表存在性不正確,應用程式在您執行bin/magento setup:db-schema:split-sales
時擲回SQLSTATE
個錯誤。
- 已改善由
ProcessManager
取用的子處理程式的例外狀況處理。 現在發生例外狀況時,主要程式會結束,而錯誤訊息只會顯示一次。 以前,會記錄多個索引器失敗並顯示多個訊息。 GitHub-30622
- 當此區域檔案的
di.xml
不含已登入的外掛程式時,將不再針對新的自訂區域型別觸發全域Adobe Commerce外掛程式(例如webapi_rest
和graphql
)。
- 初始化期間發生的異常不再緩存,現在會觸發 500 回應代碼。
- 商家現在可以商店視圖在目錄事件中分配或刪除映像。 以前,當您在编辑目錄事件時更改商店視圖時, 刪除影像 複選框未處於活動狀態,應用程式會顯示此錯誤:
Uncaught ReferenceError: toggleValueElements is not defined at HTMLInputElement.onclick
。 GitHub-364
- 合併到檔案中
communication.xml
的最後一個處理程式不再覆蓋以前創建的所有處理程式。 GitHub-29528
一般修正
- 應用程式現在會在「我的產品評論」頁面和「我的帳戶」頁面顯示最近評論的正確星數。 以前,應用程式只對第一條評論應用評論星,而頁面上的其他評論不加星。
- 標題中的帳戶連結現在追隨 WCAG 標準。 以前,標題中的帳戶連結包含重複的 ID,從而導致 WCAG 驗證失敗。
- 應用程式現在會以 UTC 時區儲存目錄事件日期。 以前,應用程式保存的目錄事件用戶時區的日期。
- 當客户機購物者使用無效地址時,應用程式不再引發系統日誌生成的錯誤。 以前,應用程式會間歇性地顯示此錯誤,而不是呈現 頁面:
No such entity with addressId
。 GitHub-15115
- 對於不受支援格式中的影像,影像大小調整程式不再暫停。 以前,當遇到不受支持的映像格式時
catalog:images:resize
,進程會停止,應用程式顯示此錯誤:bin/magento catalog:images:resize Unsupported image format
。
- WEBP 和 AVIF 對徽標圖像的支援已添加到管理中。 GitHub-32495
- 您無法再變更屬性的
media_gallery
範圍。 以前,當您將屬性的media_gallery
範圍改回 時global
,應用程式拋出錯誤。
- 作為計劃更新添加的相關產品在更新結束日期之後不再顯示在店面產品頁面上。 GitHub-469
- 當您在「我的帳戶禮品登入」頁面上按一下 管理專案 時,應用程式現在會顯示準確、資訊豐富的訊息,而且登入產品已無庫存。 之前,應用程式擲回此錯誤:
Error: Call to a member function getId() …
。 GitHub-490
- 您現在可以依照預期,從「新增頁面」頁面新增CMS頁面至網站根階層。
- 選取實體型別時,篩選功能現在可在排程匯出清單上依預期運作。 之前,篩選器無法運作,且應用程式擲回JavaScript錯誤。 GitHub-361
- 現在,類別當使用資料庫儲存方法保存類別時,將按預期將圖像從目錄
catalog/category
複製到catalog/tmp/category
目錄。表格中的media_storage_file_storage
影像行現在也具有正確的directory_id
. GitHub-11995
- 現在,在向 CMS 階層提交更改後,商家可以按預期收到有關無效緩存的通知。 以前,應用程式不會在保存 CMS 階層時使緩存失效。
- 對購物車購物車部分的冗餘AJAX請求已减少。 之前,應用程式未正確載載購物車小計,再次觸發購物車重新載入。
- 新增 URL 驗證以防止保留字包含在URL密鑰中。 請參閱 定義已知色彩一致資源識別碼 (URI)
- 在運行 PHP 7.4 的部署上,當“生成類別/產品”URL 重寫“設置設置為”否 “並且 購物者嘗試訪問不存在的類別路徑時,應用程式現在返回 404 錯誤。以前,應用程式返回 500 錯誤,指出:
Trying to access array offset on value of type bool
。 GitHub-31984
- 現在,您可以成功編輯使用已從中刪除“設計組”和“計劃設計更新 ”組的屬性 集創建的產品。之前,當您嘗試編輯基於該屬性集創建的產品時,應用程式拋出致命錯誤。 GitHub-44
nowdoc
已取代Magento_Backend
存放區切換器中的heredoc
。 GitHub-32262
- 現在,管理員在登入後會直接重新導向到請求的「管理員」頁面。 先前,當管理員登入時,系統會將他們重新導向至管理員控制面板(或設定為啟動頁面的頁面),且必須手動導覽至目的地。 GitHub-31042
- 將阿根廷、玻利維亞、智利、厄瓜多爾、蓋亞那、巴拉圭、秘魯、蘇利南和委內瑞拉地區新增至
directory_country_region
表格。 GitHub-31169
- 已新增阿爾巴尼亞、丹麥、希臘、冰島、葡萄牙和瑞典等地區至
directory_country_region
表格。 GitHub-31040
- 當發生例外狀況時,訊息現在會在MysqlMQ訊息佇列中標示為錯誤。 GitHub-18140
- 現在,在載入「管理員」銷退折讓單與商業發票頁面的稅捐資訊時,應用模組會參考正確的類別物件。 GitHub-31197
- Royal Mail Click & Drop整合現在可如預期運作。 先前,應用程式在您嘗試啟動其整合時擲回此錯誤:
Sorry! Something went wrong. Please try again later
。 GitHub-28996
- 在URL中傳遞了錯誤的出貨、銷退折讓單或商業發票識別碼時,應用模組現在會顯示資訊性錯誤訊息。 之前,應用程式擲回嚴重錯誤。 GitHub-30424
- 已移除靜態檔案位置的遞回。 應用程式現在會顯示404頁面,而不是500錯誤。 先前,預設NGINX設定中的錯誤會導致無限遞回。 GitHub-31530
cms_index_noroute.xml
檔案的名稱已更正為cms_noroute_index.xml
。 GitHub-31300
- 已重構
.editorconfig
檔案,以更正db_schema_whitelist.json
檔案的自動格式設定。 GitHub-31171
- 調整瀏覽器視窗的大小不再觸發重複的繫結放大鏡事件。 GitHub-30788
- 由
user_id
篩選Magento\Users\Model\ResourceModel\Users\Collection
時,應用程式不再擲回SQL例外狀況。 GitHub-31216
禮品卡
- 取消禮品卡時,未決付款費用現在會如預期從禮品卡移除。 以前,應用程式會在刪除禮品卡後執行
cron
時擲回錯誤。
- 當顧客結帳使用多個地址時,現在可以從「檢閱訂單」頁面上的訂單中移除禮品卡。 先前,當購物者選取禮卡並按一下 移除 時,應用程式並未從訂單中移除禮卡。
- 現在,當您將禮卡新增到購物車中並變更其價值時,應用程式會在購物車中顯示禮卡的新價格。
- 價格範圍驗證邏輯已新增至禮品卡建立頁面。 以前,管理員可以創建最小值超過最大值的卡片。 GitHub-493
addRequisitionListItemsToCart
當請求不包含 的值allow_open_amount
時,查詢現在會按預期返回自定義贈品卡片的數量。
禮品贈言
- 突變
setGiftOptionsOnCart
現在可以正確地創建禮物。 GitHub-388
禮品登記
- 現在,在創建或編輯禮品註冊表期間,店面和管理員上的事件日期 值相同。 以前,每次編輯和保存禮品註冊表時,應用程式都會在店面和管理員上向後調整 一天的活動日期 。 GitHub-466
- 該應用程式不再在禮品註冊表中顯示禁用的產品。 以前,如果產品在添加到禮品註冊表后被禁用,則當購物者訪問註冊表時,應用程式會顯示以下消息:
Error: Call to a member function getId() …
。 GitHub-510
贈品包裝
- 商店檢視的禮品包裝標籤現在可以如預期般翻譯。
- 贈品包裝現在會依預期套用至運送至多個地址的訂單。
- 應用程式現在會在移除所有產品後,從購物車中移除贈品包裝費用。
- 現在,當銷退折讓單包含禮品包裝和可設定產品費用時,銷退折讓單總計是正確的。 以前,贈品包裝稅金額並不一定包含在銷退折讓單總計中。 GitHub-34
Google Analytics
- 啟用Google Analytics後,當管理員嘗試在店面載入頁面時,應用程式不再擲回錯誤。 已新增
connect-src
的CSP專案,以允許AJAX請求至www.google-analytics.com。 GitHub-30880
Google Tag Manager
- 現在,啟用Google Tag Manager時,結帳工作流程付款頁面上帳單地址的UI元件會正確使用報價地址。 之前,付款頁面上發生JavaScript錯誤。
GraphQL
- GraphQL
products
查詢現在會傳回以屬性編輯頁面上使用的相同排序順序排序的屬性選項。
{ category(id: 2){ children { name children { name } } } }
GraphQL要求的回應現在包含正確排序的類別樹狀結構。
- 該
CartItemPrices
對象現在包含新的 GraphQL 欄位,該欄位fixed_product_taxes
返回應用於購物車項的固定產品稅的陣列。 以前,應用於購物車物料的固定產品稅不包括在購物車查詢中。
- 對 GraphQL 的空請求現在會拋出響應代碼 200 而不是 500。 以前,GraphQL 解析器在生成 查詢 結果之前拋出了異常。
applyRewardPointsToCart
突變現在會更新購物車的總計,以準確反映扣除的獎勵點數的值。 GitHub-486
- 使用GraphQL連結追加銷售產品時,停用的產品不再包含在GraphQL回應中。
- 當訪客結帳停用時,商戶現在可以使用GraphQL
setShippingAddressesOnCart
方法,設定購物車的帳單和運送地址。
categoryList
查詢在CategoryTree
物件上包含多個片段時,不再擲回例外狀況。 GitHub-31086
- GraphQL
product
查詢現在會傳回正確的客戶群組價格。
- GraphQL
products
查詢回應現在會根據產品屬性位置來排序彙總。
- 當產品和類別URL後綴包含空值時,應用程式不再在 GraphQL 查詢期間拋出類型錯誤。 GitHub-30909
- 對象
CustomizableDateValue
現在包含該type
屬性。 其值為可設為 DATE、DATE_TIME 或 TIME 的分項清單。
- 該
dynamicBlocks
查詢 返回與指定篩選器匹配的動態塊的內容。
- POST
V1/products/special-price-delete
要求現在只會按預期刪除具有指定store_id
的價格。 以前,該呼叫從所有商店中刪除了指定SKU的所有特價。 GitHub-25907
- 修正
createGiftRegistry
突變中country_code
屬性的錯誤。
- 修正
updateGiftRegistryItems
突變的giftRegistryUid
屬性問題。
- 新增額外檢查,以防止使用
updateGiftRegistryRegistrants
突變將隨機人員新增為贈品登入的登入者。
addConfigurableProductsToCart
突變現在會傳回指定產品的正確縮圖。 之前,它會返回父產品的縮圖。
- 當
products
特殊價格期間設置為未來日期時,查詢不再公開產品的特殊價格。 GitHub-30210、 GitHub-29631
- 查詢 回應現在包括
customer
屬性total_giftcard
作為物件的一部分OrderTotal
。
- 修正造成
products
查詢傳回有關沒有層級訂價集之料號之價格層級的錯誤資訊的問題。 GitHub-32279
影像
- 現在,在使用 POST 端點創建或更新捆綁產品時,您可以按預期設置required_options和has_options
/V1/product/:sku
捆綁包屬性。 之前,儘管已嘗試將其設為 1 (一),但這些自定義屬性仍設為 0 (零)。
匯入/匯出
- “導出頁面實體屬性”網格中產品實體的類別 ID 篩選器現在按預期工作。
- 分組產品庫存狀態現在會按預期更新為在所有子產品缺貨時出現缺貨。 GitHub-32647
- 當匯入更新子產品庫存狀態時,可設定的產品庫存狀態現在會如預期自動更新。 以前,當子項產品庫存狀態由匯入更新時,產品庫存狀態不會自動更新。
- 您現在可以在排程的匯出中儲存空白值。 以前,應用程式會在建立或儲存匯出後更新空白篩選值。
no
和not specified
值在資料庫中以零表示,且not selected
的值已以no
覆寫。
- 現在,匯出程式在匯出產品、庫存來源和客戶實體時,會考量使用者角色範圍。 以前,匯出程式忽略使用者角色範圍,允許匯出私人使用者角色匯出實體。
- 如果產品是以
tax_class_name
值None
或0
匯入,應用程式現在會將產品稅捐類別設定為None
。 先前,如果CSV檔案中的product tax_class_name
為None
,應用程式會建立新的稅捐類別None
,這複製了現有的稅捐類別。0
如果在CSV檔中,則product tax_class_name
應用程式將忽略該值,並且產品稅種在導入後不會更改。
- 管理員現在可以從管理員成功變更套件組合產品
bundle_values
的name
。 先前,在您從管理員變更名稱后,應用程式會在店面將產品顯示為無庫存。 產品也與相同的SKU合併為單一組合選項區段。
- 現在,在匯出客戶資料時,應用程式會考量使用者範圍。 先前,當您嘗試匯出客戶時,應用程式會從所有網站匯出客戶資料。
- 在CSV檔案中指定
__EMPTY__VALUE__
時,應用程式現在會依照預期在CSV檔案匯入期間,移除向上銷售、交叉銷售及相關產品之間的產品關係。
- 匯出許多客戶的自定義地址數據(管理系統 >匯出)不再經常導致記憶體錯誤。先前,在匯出自訂位址資料時,應用程式會嘗試載入所有客戶資料,導致記憶體耗盡,而應用程式擲回無法配置記憶體錯誤。
- 在預設CSV匯入程式期間,不再匯入重複的層級價格。 先前,遺漏驗證以防止匯入重複的層級價格,當發生重複層級價格時,商家無法儲存產品。 商戶嘗試排程產品變更時也看到此錯誤:
SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry…
。
- 所有產品影像現在都會在匯入期間經過驗證。 以前,當產品有多個影像時,應用程式只會驗證第一個影像。 GitHub-28236
- 您現在可以在匯入期間,如預期從客戶地址中刪除區域。 以前,使用空區域導入客戶地址時,分配的區域不會更改。
- 將 JSON 或 HTML 內容作為附加產品屬性的產品現在可以正確匯出到 CSV 文件。 以前,CSV 檔案的錯誤欄位中包含重疊的數據字串。
指數
- 進程管理員現在在子進程失敗時退出並顯示錯誤。 以前,如果傳遞給進程管理器的函數數(例如,索引器維度)低於環境變數的值
MAGE_INDEXER_THREADS_COUNT
,則進程管理器始終成功退出。 GitHub-30964
- 當索引器模式設定為 儲存時更新 時,使用REST PUT
/V1/products/:sku/links
要求連結產品時,現在可在店面搜尋結果中如預期提供產品。
- 當索引器模式設定為 儲存時更新 時,目錄價格規則索引器現在會如預期般運作。 GitHub-370
- 刪除不包含產品的已停用類別現在對目錄搜尋和類別平面索引表格沒有影響。 以前,刪除非使用中類別會觸發完整重新索引。 GitHub-23297
- 自定義索引器現在可以對訂閱使用不同的實體列名稱。 以前,資料庫觸發器使用索引器上次設置為“按計劃更新”的 列名稱,而不是指定的索引器。GitHub-21853
- 應用程式不再傳送AJAX請求至不受請求影響的重新載入客戶数据区段 (
Magento_Customer/js/section-config
)。 GitHub-31948
- 在類別中添加、刪除或重新排序產品后,以下索引器不再失效:
catalog_category_product
和catalogsearch_fulltext
(及其依賴項)。 以前,這些無意中的移除會觸發網站完全重新編列索引。 現在,如果未啟用平面目錄,則在這些情況下會阻止完全重新索引。
基礎設施
- 依賴項
pelago/emogrifier
已從版本 3.1.0 更新到 5.0.0。此更新導致對類引入了Magento\Email\Model\Template\Filter
向後不相容的更改。 更改後的代碼會在電子郵件範本轉譯期間執行。 請參閱 BIC 參考。
- 修正無法儲存新產品的問題
\Magento\CatalogInventory\Model\Indexer\Stock\CacheCleaner::getCategoryIdsByProductIds
。
- 已棄用的 TinyMCE v3 資料庫 已被移除。
Magento_Tinymce3Banner
與TinyMCE v3.x相關的模組和MFTF測試已從Adobe Systems Commerce中刪除。
- 當購物者輸入包含法語變音符號(例如「é」、「e」)的電子郵件地址時,應用程式不會再在「聯絡我們」表單上擲回
Invalid header value detected
錯誤。 應用程式現在會將使用者名稱中的UTF-8字母轉換為ASCII編碼。 之前,UTF-8字母在電子郵件地址的唯一區段中無法轉換為ASCII編碼。
- 將外掛程式新增到父類別時,應用程式不再擲回PHP嚴重錯誤。 GitHub-31291
- 已更新這些模組的README.md檔案:
Magento_Msrp
、Magento_MsrpConfigurableProduct
、Magento_MsrpGroupedProduct
、Magento_Multishipping
、Magento_MysqlMq
。 GitHub-32577
- 已針對PHP 8相容性將
phpcpd
更新至v6.0.3。
- 已更新
ramsey/uuid
與PHP 8.0的相容性。GitHub-31777,GitHub-826
- 已針對PHP 8相容性將
colinmollenhour/php-redis-session-abstract
更新至v1.4.4。 GitHub-32709
- 已修正
phpstan.neon
檔案中索引標籤和空格的無效組合。 GitHub-31239
- 已移除整個程式碼基底中過時屬性
$_isScopePrivate
的使用。 GitHub-30506
- 頁面版面配置在中不再使用硬式編碼
Magento\Widget\Block\Adminhtml\Widget\Instance\Edit\Chooser\Container
。 因此,getPageLayouts()
函式現在會依預期傳回不同模組宣告的實際版面配置清單。 以前只傳回硬式編碼版面。 GitHub-31168
composer.lock
檔案已更新至編碼標準的最新版本。 GitHub-31152
- 已在
web-token/jwt-framework
封裝上新增遺漏的相依性至magento/module-jwt-framework-adapter
。 GitHub-32578
- 已將被動接聽程式新增至
fotorama.js
資料庫,以改善Lighthouse量度分數。 GitHub-31140
- 已更新Google Analytics模組的 README.md 檔案。 GitHub-32616
- 進程管理員現在可在分叉的進程中正確處理異常。 主進程現在退出,應用程式現在僅顯示一次錯誤消息。 此外,分叉進程的異常現在在主進程中引發時處理。 以前,應用程式記錄了多個索引器失敗,並顯示多個錯誤消息。 GitHub-30622
- 將外掛程式添加到父類時,應用程式不再引發錯誤。 (參數
optionsProvider
現在getContentIdentities
在 .)Assest.php
之前,應用程式拋出此錯誤:Error: Cannot instantiate interface Magento\Framework\Data\OptionSourceInterface
。 GitHub-31291
- 在空白資料夾上執行
Magento\Framework\Filesystem\Io\Ftp::ls()
現在會如預期傳回空白陣列。 之前,應用程式擲回此例外狀況:Invalid argument supplied for foreach() in vendor/magento/framework/Filesystem/Io/Ftp.php…
。 GitHub-31288
- 角色和規則的
update
方法已在app/code/Magento/Authorization/Model/Role.php
中標示為已棄用。 GitHub-30756
- 已更正SameSite Cookie引數的串連。 之前,不正確的串連會將
lex
尾碼附加至value
、domain
和其他引數。 GitHub-26377,GitHub-32440
- 在整個程式碼基底中,
allure-framework/allure-phpunit
已升級至v1.3.1。 之前,應用程式顯示這個錯誤:Warning: Use of undefined constant GLOB_BRACE - assumed 'GLOB_BRACE' (this will throw an Error in a future version of PHP) in /var/www/html/src/vendor/allure-framework/allure-phpunit/src/Yandex/Allure/Adapter/AllureAdapter.php:74.
GitHub-24635
- 當在生產模式中執行
bin/magento
命令發生錯誤時,應用程式現在會顯示更多資訊錯誤。 以前,應用程式不顯示任何錯誤消息或顯示缺少資訊的消息。 GitHub-32786
ArrayIterator
PHP 物件已更新為在 PHP 7.4 中正常工作。 GitHub-32088
- 當客戶在沒有可用的運輸公司時嘗試完成訂單時,應用程式不再引發錯誤。 相反,它會顯示結帳頁面和以下消息:
Sorry, no quotes are available for this order at this time
。 以前,應用程式顯示空白結帳頁面,並在異常日誌中記錄此消息:array_keys() expects parameter 1 to be array, null given
。 GitHub-30830
- 應用程式不再將每個Cookie記錄為單獨的上下文。
$_COOKIE
陣列也已轉換為字串。 先前,由於每個Cookie記錄為個別的內容,因此,當Cookie數量超過50時,應用程式會記錄此訊息:Unable to send the cookie. Maximum number of cookies would be exceeded
。 GitHub-31334
發票
- 在Admin中建立新發票時,電子郵件復本 核取方塊現在可如預期運作。 以前,如果在 銷售電子郵件 中啟用了傳送發票電子郵件的全域設定,則會忽略核取方塊。 它現在是一致的,而且運作方式與出貨和銷退折讓單建立頁面相同。 GitHub-28511
媒體集
- 處理缺少XMP資訊的PNG影像時,
bin/magento media-gallery:sync
現在會如預期般失敗。
- 刪除相關產品時,
catalog_product_entity_media_gallery
資料表中的專案會如預期移除。 GitHub-17727
- 啟用JavaScript縮制後,現在可以在媒體集中更新影像詳細資料。 先前未儲存影像詳細資料,應用程式顯示此錯誤:
TypeError: Cannot read property 'call' of undefined in jquery.validate
。 GitHub-31633
MFTF
在功能測試架構變更記錄檔中說明新功能和MFTF核心錯誤修正。
- 已從測試中移除
magento indexer:reindex
和cache:flush
命令以及AdminReindexAndFlushCache
動作群組,以改善下列模組的執行:Bundle
、Catalog
、CatalogRule
、CatalogRuleConfigurable
、CatalogUrlRewrite
、Downloadable
、Indexer
、Paypal
以及Sales
。 GitHub-31031
AdminSubmitCategoriesPopupActionGroup
已新增至測試,以防止測試失敗。 GitHub-31251
- 已使用和
StorefrontAssertProductNameOnProductMainPageActionGroup
(現有作組)重構StorefrontCheckQuickSearchStringActionGroup
了測試。GitHub-31251
重構測試
已重構以下測試以改進執行時間:
AddOutOfStockProductToCompareListTest
AdminApplyTierPriceToProductWithPercentageDiscountTest
AdminCheckingCreditMemoTotalsTest
AdminCheckDashboardWithChartsTest
AdminConfigDefaultProductLayoutFromConfigurationSettingTest
AdminCreateInvoiceTest
AdminCreateOrderAddProductCheckboxTest
AdminMassOrdersCancelCompleteAndClosedTest
AdminMassOrdersCancelProcessingAndClosedTest
AdminMassOrdersHoldOnCompleteTest
AdminMassOrdersHoldOnPendingAndProcessingTest
(取代已棄用的AdminMassOrdersHoldOnPendingAndProcessingTest
)
AdminMassOrdersUpdateCancelPendingOrderTest
AdminMassProductPriceUpdateTest
AdminMassUpdateProductAttributesMissingRequiredFieldTest
AdminOrdersReleaseInUnholdStatusTest
AdminPanelIsFrozenIfStorefrontIsOpenedViaCustomerViewTest
AdminSortingByWebsitesTest
AdminUpdateSimpleProduct
AdminUpdateSimpleProductWithRegularPriceInStockEnabledFlatTest
AdminValidateShippingTrackingNumberTest
CancelOrdersInOrderSalesReportTest
ProductsQtyReturnAfterOrderCancelTest
StorefrontConfigurableProductBasicInfoTest
動作群組
下列測試中的重複動作已由動作群組取代:
AdminCheckConfigurableProductPriceWithDisabledChildProductTest
AdminConfigurableProductCreateTest
AdminConfigurableProductRemoveAnOptionTest
AdminCreateProductDuplicateUrlkeyTest
AdminCreateSimpleProductNegativePriceTest
AdminCreateSimpleProductZeroPriceTest
AdminCreateVirtualProductFillingRequiredFieldsOnlyTest
AdminUpdateSimpleProductWithRegularPriceInStockDisabledProductTest
AdminUpdateSimpleProductWithRegularPriceInStockNotVisibleIndividuallyTest
AdminUpdateSimpleProductWithRegularPriceInStockVisibleInCatalogOnlyTest
新動作群組
AdminClearFiltersOnGridActionGroup
AdminClickAddNewPageOnPagesGridActionGroup
AdminClickInsertWidgetActionGroup
AdminClickRefundOfflineOnNewMemoPageActionGroup
AdminFillAccountInformationOnCreateOrderPageActionGroup
AdminGoToOrderStatusPageActionGroup
AdminOpenCMSPagesGridActionGroup
AdminSelectAttributeSetOnEditProductPageActionGroup
AssertAdminProductIsAssignedToCategoryActionGroup
(通過SKU並按兩下第一行來替換篩選產品網格(以減少測試執行時間)
AssertLinkActionGroup
AssertStorefrontCartDiscountActionGroup
ClickPlaceOrderActionGroup
SaveCmsPageActionGroup
StorefrontAssertProductNameIsNotOnProductMainPageActionGroup
StorefrontGuestCheckoutProceedToPaymentStepActionGroup
StorefrontHoverProductOnCategoryPageActionGroup
StorefrontSelectCustomizeAndAddToTheCartButtonActionGroup
已刪除的作組
- 已從測試中移除
CliIndexerReindexActionGroup
(或已變更值),以改善Backend
、Bundle
、BundleImportExport
、Catalog
、CatalogRule
、CatalogSearch
、Checkout
、Downloadable
、Elasticsearch
、Elasticsearch6
、Indexer
、LayeredNavigation
、LoginAsCustomer
、Newsletter
、Sales
、SalesRule
、Search
、Store
、Swatches
、UrlRewrite
、Weee
及Wishlist
模組的執行時間。
- 已從
Catalog
、CatalogUrlRewrite
、Checkout
、Config
、ConfigurableProduct
、Contact
、Cookie
、CurrencySymbol
、Customer
、Downloadable
、Elasticsearch
、Elasticsearch6
、Fedex
、Indexer
、LayeredNavigation
、LoginAsCustomer
、Msrp
、Multishipping
、Sales
、Swatches
、Translation
、UrlRewrite
、Vault
、Weee
和Wishlist
模組移除CliCacheFlushActionGroup
。
電子報
- 應用程式不會再傳送電子報電子郵件給已在電子報佇列建立和傳送電子報之間期間取消訂閱電子報的客戶。 GitHub-32116
- 應用程式現在會遵守電子報啟用設定(商店 > 設定 > 設定 > 客戶 > 電子報 > 一般選項)。 以前,這些設置始終從多商店部署中的預設範圍中檢索。 GitHub-31188
- REST呼叫GET
/V1/customers/search
現在會傳回已訂閱多份電子報的客戶的正確資訊。 GitHub-31168
- 快取訂閱狀態已從Newsletter外掛程式移除。 GitHub-19345
訂購
- 針對部份開立商業發票的訂單,應用模組現在會正確計算已開立商業發票的客戶餘額,並將商店信用傳回客戶帳戶。
- 現在,當應用程式儲存已退款的客戶餘額時,會按預期儲存修改後的訂單。 GitHub-393
付款方式
- 應用程式現在會打開付款塊
frontend
,無論電子郵件是從哪個區域發送的。 (現在類比當前區域,就像呈現付款塊之前一樣frontend
。以前,付款塊是在發送電子郵件的區域呈現的。 因此,無論銷售電子郵件是從管理員還是由 REST API 觸發,資產 的 URL 都會嘗試從錯誤的區域 (webapi_rest
或adminhtml
) 載入它們。
- 應用程式現在會將可下載產品的連結發送到結帳時指定的電子郵件地址。 以前,當訪客購物者使用 PayPal Express Checkout 並輸入不同的電子郵件地址來提交訂單和結帳時,應用程式會將可下載的產品連結發送到第一個位址。
- 現在,應用程式在支持多種貨幣的部署中顯示付款方式頁面的可用商店信用額度的準確值。
- 當訪客購物者在結帳期間將訂單的運送地址變更為不同的國家/地區時,付款方法清單現在會如預期更新。 以前,更改帳單地址不會觸發可能的付款方式的更新。
PayPal
- 購物者現在可以成功結帳PayPal Payflow Pro訂單,該訂單的運送地址包含特殊字元。 之前,應用程式會拒絕這些訂單的付款。
- 使用PayPal成功付款後,購物者現在會重新導向回訂購成功頁面。 以前,購物者會因為工作階段資料遺失而重新導向至空白頁面。
性能
- 已改善大型目錄上的管理員SKU搜尋效能。 查詢最佳化工具提示現在會在查詢執行期間強制使用索引。
- 已改善在大型資料表(數百萬列)上執行時
catalog_product_alert
cron
處理序的效能。 以前,catalog_product_alert
載入所有產品警示,造成記憶體不足的例外狀況。
- 當僅需要一個編輯頁面來呈現Admin表單時,應用程式不再載入所有CMS頁面。 這些頁面現在載入更快。 GitHub-30936
-
WHERE IN
運算式中的數值現在會轉型為數字,而非字串,如此可改善某些MariaDB版本中的查詢效能。 GitHub-31135 -
use_application_lock
模式可讓您透過使用環境變數或透過設定app/etc/env.php
檔案來啟用重新索引。 啟用此模式後,您就不需要在失敗後手動重設索引器。 若未啟用此模式,您必須在失敗後手動重設索引子。 請參閱使用應用程式鎖定模式重新索引處理序。
定價
- 當購物者更新店面的產品數量時,應用程式現在會以分組價格正確更新產品的價格。 GitHub-32669
- 現在,當產品已分配層價並
Magento\Framework\Api\ExtensibleDataObjectConverter
用於轉換產品數據時,可以保存捆綁產品。 以前,當Magento\Framework\Api\ExtensibleDataObjectConverter
用於在保存產品時將產品數據轉換數位時,應用程式不會保存產品並顯示此錯誤:Notice: Undefined index: price in app/code/Magento/Catalog/Model/Product/Type/Price.php on line 382.
- 計劃的價格更新現在適用於已在購物者購物車中的產品。 GitHub-356
- 現在,當啟用了數量增量且小數庫存小於 1 時,層價格將按預期應用於產品。 之前,最低層價格數量設置為 1。
產品影片
- 您現在可以使用 新增視訊 按鈕(管理員 目錄 > 產品)來連續新增多個視訊。 以前,視訊欄位會保留上一個視訊的詳細資訊。
- 在產品頁面上進入產品視訊的全熒幕模式,現在可在行動裝置上如預期般運作。 之前,進入全熒幕模式會導致視訊在結束全熒幕模式之前暫停。
- 現在,導覽箭頭按鈕(下一步 和 上一個)會如預期般顯示在店面產品影片中。
- 商戶現在可以依預期使用產品頁面上的 插入影片 按鈕新增Vimeo影片。 之前,應用程式會顯示 404 錯誤。 GitHub-31753
報價
/V1/guest-carts/examplecartid/items
呼叫現在會傳回請求的商店視圖。以前,它返回商店中的第一個商店視圖,而不是請求的。
- 發票發送現在可以配置。 以前,發票發送不可配置,應用程式總是在創建發票后發送發票。 發票和訂單電子郵件都是在一個觀察者的範圍下發送的。 現在,單獨的觀察者管理訂單電子郵件和發票電子郵件的發送。 GitHub-27656
報表
- 現在可在 Adobe Systems Commerce on 雲端基礎結構 專案上檢視和下載所有系統報表。 之前,您無法下載記錄、資料、設計或商店的系統報表。
- 管理員 報告 > 檢閱 > 產品檢閱 的上次檢閱日期現在顯示正確的檢閱日期。 以前,應用程式顯示的是產品建立日期,而不是稽核日期。
退貨授權(RMA)
- 當屬性欄位值
required
設定為 no 時,RMAresolution
屬性不再顯示為必要。
- 您現在可以從管理員選取多個退貨訂單。 先前,當您在選取多個傳回專案並從[動作]下拉式功能表選取[關閉]後,按一下 提交 時,應用程式擲回錯誤。
- 使用REST API變更傳回的狀態後,應用程式現在會依預期傳送電子郵件通知給客戶。
- 應用程式現在會根據管理員客戶傳回格線中的篩選值來篩選記錄。 之前,應用程式會將您導向到「管理所有客戶」頁面,然後按一下「重設篩選器」按鈕也會重新導向到此頁面。 GitHub-436
評論
- 現在,在「我的帳戶」頁面的「評論詳細資訊」區段中,可以正確計算產品評論評等星級。
- 產品評論詳細資訊頁面的平均產品評等和產品評等區段現在可正確呈現。 先前,應用程式計算店面評等時,稽核ID並未設定,產品稽核範本亦未正確呈現。
- “成為第一個審閱此產品 的人”連結 現在在管理員批准評論後按預期更改為審閱計數。
- 管理員現在可以按預期在產品編輯頁面的「產品評論」部分對產品評論進行排序。 GitHub-30270
- 現在,在管理員核准並儲存來自與存放區不同的網域的稽核後,使用正確的存放區ID來儲存稽核。 GitHub-17510
獎勵
- 當下訂單的客戶從系統中移除後,商戶現在可以使用獎勵點來取消全部或部分下單的訂單。
- 商戶現在可以從購物車價格規則中移除獎勵積分。 先前,當商家在建立購物車價格規則時嘗試將 獎勵點數 設定為0時,獎勵點數的先前值持續存在。
- 當管理員 行銷 > 擱置的評論 網格核准多個評論時,產品評論的獎勵點數現在會與相關網站相關聯。 以前,獎勵點數不會顯示在店面上,也不會連結到管理員中的相關網站。
- 現在,當使用多個地址結帳的購物者選中或取消選中“ 商店積分(獎勵點) ”選項時,應用程式會更新付款方式清單。
銷售
- 現在,當允許延期交貨設置時 ,管理員使用者可以為缺貨商品下訂單( 商店 > 配置 > 目錄> 庫存 > 產品Stock選項 )。 之前,應用程式拋出錯誤。
- 現在,當姓氏以空格結尾時,購物者可以在訂單和退貨頁面上找到訂單。
- 現在,當分配 100% 折扣的購物車價格規則應用於同時需繳納目錄產品和折扣稅且符合免費運輸條件的訂單時,將使用正確的總金額創建發票。 以前,訂單價格正確,但商業發票不正確。 GitHub-30853
- 依日期篩選訂單現在會傳回準確的結果。 以前,當您按訂單日期篩選訂單時,應用程式不會傳回在00:00 UTC之後所下的訂單。
- 在多儲存區部署中,價格 屬性使用 網站 範圍時,銷退折讓單格線現在會顯示正確的貨幣符號。
- 重新載入「管理員建立新訂單」頁面後,結帳工作流程的「付款與運送資訊」區段上的付款方法選項按鈕不再消失。 GitHub-32106
- 阿拉伯文字現在可在發票中正確顯示。
- 應用模組現在會正確計算以部署PayPal Payment Pro作為付款閘道之商店中訂單或商業發票為基準之銷退折讓單的部分銷退折讓單稅捐總計。 以前,對於具有多個商業發票的訂單,應用模組會沖銷該訂單的全部稅捐,以取消銷退折讓單中的部份商業發票。
- 應用程式不再在向客戶發送新訂單電子郵件時創建隨機資料庫死鎖。 以前,發生死鎖是因為應用程式保存了整個物件及其相關物件,而不是更新的 SQL 列。 應用程式顯示這種類型的錯誤:
SQLSTATE[40001]: Serialization failure: 1213 Deadlock found when trying to get lock; try restarting transaction
。 GitHub-31090
- 店面訂單詳細信息頁面現在顯示正確的已發貨產品數量。 以前,產品數量不正確,因為「訂單裝運」的範本頁面顯示為 「已發貨
int
數量」。。這已變更為float
。
- 當未選中發票按鈕的電子郵件 副本時, 應用程式不再通過電子郵件發送訂單發票的副本。以前,應用程式將電子郵件 發送給客戶 ,並將 發票電子郵件副本發送到。 GitHub-28511
- 從「管理員」為現有客戶建立新訂單時,應用模組不會再建立客戶帳戶的重複地址專案。 「儲存於通訊錄」核取方塊已重新命名為「新增至通訊錄」,現在預設為「管理員」中取消核取。
- 當購物者從帳戶列印訂單時,應用程式現在會使用已上傳至HTML列印檢視 設定 標誌中的標誌。 以前,應用程式顯示LUMA標誌,而不是上傳的標誌。
- 當專案計數超過20時,店面上的訂單專案傳呼機現在會如預期般運作。 以前,傳呼機會考慮子產品,因此總計數不正確。
- 應用程式現在會在「訂單」頁面與「銷退折讓單」頁面網格上,針對小計與出貨與處理值顯示正確的貨幣符號。 GitHub-22662
- 使用Safari的管理員現在可以從管理員成功將產品新增至訂單。 先前,當管理員按一下 將選取的產品新增至訂單 按鈕時,應用程式會顯示旋轉載入圖示,而頁面會擱置。 GitHub-30265
銷售規則
- 當購物車套用多個購物車價格規則時,應用程式現在會正確套用購物車價格規則,其中 最大數量折扣套用至 或 折扣數量步驟(購買X) 條件。 先前,如果將 最大數量折扣的購物車價格規則套用到 或 折扣數量步驟(購買X) 套用到另一個購物車價格規則之後,則總折扣會減少到為 最大數量折扣套用到 或 折扣數量步驟(購買X) 乘以產品價格。
- 抵用券報表現在可正確反映實作分割資料庫的部署中的抵用券活動。
- 包含條件「類別 IS NOT」的購物車價格規則,現在會如預期套用至未指派給類別但已指派其父級產品的可設定子項/簡單產品。
- 當優惠券套用至訂單時,GraphQL
cart
查詢現在會傳回購物車帳單步驟的正確總計。
搜尋 search-heading
- 類別頁面不再包含這些重複的HTML元素ID:
modes-label
、mode-list
、toolbar-amount
、sorter
、limiter
。
- 部分字詞搜尋結果不再包含非預期或不相關的相符專案,搜尋可在店面和管理員上產生一致的結果。 應用程式現在會使用不同的分析器(不含詞幹分析器)進行部分字詞搜尋。 以前,搜尋結果會顯示不含搜尋關鍵字的產品。 (預設分析器先前包含字乾分析器,而且由於在搜尋時間用於部分字詞搜尋,因此搜尋結果可能會產生非預期或不相關的相符專案。)
- 如果搜尋查詢包含多個字詞,且產品名稱設定為無法搜尋,則快速搜尋現在會傳回結果。 先前,如果產品名稱設定為無法搜尋,應用程式會對包含多個字詞的搜尋查詢擲回查詢例外狀況。
- 現在搜尋結果包含
weight
屬性(設定為可搜尋時),如預期般包含。
- 當您在啟用Elasticsearch的情況下檢視空白類別頁面時,應用程式不再擲回錯誤。 相反地,它會如預期般轉譯頁面,並顯示資訊訊息。 之前,空白的全文檢索索引會在類別頁面上觸發例外狀況。
- 如果購物者在開始搜尋後於搜尋欄位外按一下,搜尋欄位自動完成功能現在會如預期運作。 當購物者繼續輸入時,自動完成建議現在會重新出現。 以前,應用程式不會顯示自動完成建議,而且按一下搜尋方塊也不會使搜尋建議再次顯示(雖然輸入其他字母時會顯示出來)。
- 根據進階搜尋中的完整或部分SKU搜尋產品時,現在會傳回預期的產品。
- 階層導覽篩選器現在會顯示精確的產品計數。 過去,Elasticsearch的產品計數值不會依目錄許可權篩選。
- 類別URL頁面引數超過分頁時,Elasticsearch不再擲回錯誤。 GitHub-23843
- 您現在可以將自訂Elasticsearch欄位對應程式新增到
Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\Resolver\CompositeResolver
。 GitHub-24350
- 開發人員現在可以更改Elasticsearch映射。 先前,以預設對應傳送至Elasticsearch伺服器的動態範本採用硬式編碼,如此可防止開發人員在Elasticsearch中編制與自訂模組相關的任何額外資料的索引。 GitHub-24363
- 停用搜尋建議時,搜尋欄位(表單小型搜尋)現在會如預期運作。 GitHub-30584
送貨
- 當購物者在結帳期間使用多個地址刪除產品後導覽回到購物車頁面時,應用程式現在會依預期更新運費。
- 當購物車中的某些專案符合免費送貨資格時,應用程式現在會顯示正確的調整後送貨價格。 以前,當購物車中的專案子集符合免費运費時,應用程式不會調整運費,而是向購物者显示完整的運費。
- 僅限於特定網站的管理員現在可以為在同一網站上下達的訂單創建貨件。 以前,當缺少預設商店權限的管理員視圖嘗試發送管理員有權訪問的商店視圖中的訂單時,應用程式會引發此異常:
Notice: Undefined offset: 1 in /app/code/Magento/Catalog/Model/Product/Attribute/Backend/GroupPrice/AbstractGroupPrice.php on line 293
。
- 現在,應用程式在確定訂單是否符合 DHL 運輸条件時帳戶相關的購物車價格規則折扣免費。
- 現在,當以非基礎貨幣下訂單時,發貨標籤按預期使用基礎貨幣,而不是支援多種貨幣的商店的訂單貨幣。 GitHub-31891
- 現在,當購物者在離開多配送頁面后,在結帳時返回到購物車頁面時,應用程式會显示正確的訂單小計。 GitHub-31889
- 在管理員訂單創建期間编辑帳單信息不再更改具有不同預設送貨和帳單地址的客戶的發貨信息。 GitHub-31786
- 當購物者從管理員創建訂單時按兩下獲取 配送方式和費率 並選擇配送方式時,應用程式不再取消選中 附加備註 複選框。GitHub-30256
- 購物者現在可以使用返回瀏覽器按鈕返回選擇送貨方式頁面,同時結帳具有多個地址的訂單。 之前,應用程式會顯示損毀的「選取送貨方法」頁面。 GitHub-30268
- 當購物者變更「送貨地址」多地址頁面上的數量,並按一下瀏覽器的「上一步」按鈕後,產品數量現在會依預期維持不變。 GitHub-31956
- 在結帳時套用購物車價格規則時,統一運費方式費用不再為零。 GitHub-21832
- 啟用 建立出貨標籤 核取方塊且產品名稱包含Unicode字元時,當商家嘗試使用DHL出貨訂單時,應用程式不再擲回錯誤。 先前,應用程式在要求建立標籤時會顯示此錯誤:
The response is in wrong format
。 GitHub-31032
- 您可以在多網站部署中,成功向管理員下訂單,其中一個網站已啟用
United States
,而另一個網站已啟用Disable all countries
作為預設範圍。 之前,應用程式未下訂單,且顯示這個錯誤:Please check the shipping address information. "regionId" is required. Enter and try again
。 GitHub-30577
分期
- 計劃區塊更新功能現在在快速實施的部署中按預期工作。 以前,應用程式沒有更新塊內容,因為 Fastly 緩存標籤沒有失效,並且 Fastly 繼續提供過時內容。
- 當購物車價格規則測試預覽指派給多個網站商店檢視時,現在會載入適當的網站中。 以前,無論指派的網站為何,購物車價格規則預備預覽都會載入預設商店檢視中。
- 計劃更新結束后,非預設商店視圖中的產品的特殊價格現在按預期設置為預設值。
- 商戶現在可以透過結束日期建立未來的分段更新後,從可下載產品頁面成功儲存連結樣本的可下載產品。 之前,應用程式未儲存產品並顯示此訊息:
The downloadable sample isn't related to the product. Verify the link and try again
。 GitHub-488
- 在預覽類別的排程更新期間,應用程式不再執行包含所有產品ID的大型資料庫查詢。 相反地,類別篩選條件會套用至產品集合,以建立類別臨時預覽的表格。 以前,應用程式將所有產品插入到暫存預覽的臨時表中,這會降低性能。
Magento_SalesRuleStaging
從 2.3.x 升級期間,模組不再觸發錯誤。
- 現在,當您視圖排程更新時,應用程式會显示目錄規則條件以及正確的数据。 以前,如果您查看了使用條件創建的計劃更新,則應用程式不會顯示條件或顯示數據不正確的條件。
- 在排定的更新取消核取後,產品的 使用預設值 核取方塊仍保持核取狀態。
- 目錄價格規則現在會依預期套用至具有未定義屬性值的產品。 先前,透過目錄價格規則建立的折扣不會套用至具有未定義屬性的產品。 GitHub-461
- 現在,目錄規則可如預期般搭配不同時區的存放區進行多網站部署。 以前,應用程式會一次在所有網站上套用或停用目錄規則。
- 為特定網站建立排程更新時,不再移除層級價格。
- 現在,您可以在創建包含結束日期的未來暫存更新後,從“可下載產品”頁面保存產品。 之前,應用程式不會儲存產品並顯示以下訊息:
The downloadable link isn't related to the product. Verify the link and try again
。 GitHub-474
商店
- 顯示商店首頁時,應用程式不再將
0
的字串視為空白值。 以前,應用程式將請求路徑開頭的整數值視為存放區ID,這對SEO產生非預期的影響。
- 已移除「
lib/internal/Magento/Framework/App/Action/Plugin
」下\Magento\Framework\App\ActionInterface
的外掛程式,以符合外掛程式應用來自訂另一個模組之某個模組的行為的准則。 GitHub-28050
- 現在,當您嘗試選取
Website
作為預設值,且網站建立期間停用Store View
時,應用程式會顯示此訊息:Please enable your Store View before using this Web Site as Default
。 之前,網站當機,應用程式未顯示警報。
稅金
- 應用模組現在會在驗證最小訂單金額時考慮隱藏稅捐。
- 當購物者導覽回到其購物車並在將套件產品新增到購物車後繼續結帳時,應用程式現在會如預期顯示固定產品稅額(FPT)。 GitHub-30250
- 當管理員建立現有客戶的訂單時,應用程式現在會以儲存的VAT編號預填管理員新訂單頁面之「地址資訊」區段帳單與送貨地址的 VAT編號 輸入欄位。 GitHub-31846
- 啟用
customer/create_account/vat_frontend_visibility
時,應用程式現在會在客戶註冊頁面上顯示 VAT編號 欄位。 GitHub-31326
測試
- 測試環境已升級至Redis 6.0.12。
- 已從整合測試中移除
CacheCleaner::cleanAll();
。 GitHub-31074
- 已針對此案例新增測試: 當客戶訂閱佇列的新聞稿時,管理員用戶可以编辑客戶帳戶。 GitHub-30645
- 從測試中刪除了該
cache:flush
命令,以縮短、CatalogUrlRewrite
和LoginAsCustomer
模組的Catalog
執行時間。GitHub-31056
- 多餘參數已被移除,POST 中
\Magento\Logging\Model\ProcessorTest::testLoggingProcessorLogsActionShipping
需要的地方變更為 GET。
主題
- 當 將JS程式碼移動到頁面 底部設定(存放區 > 設定 > 進階 > 開發人員 > JavaScript設定)和Cookie皆已啟用時,客戶登入頁面不再顯示此訊息:
The store will not work correctly in the case when cookies are disabled
。
- 標題中的帳戶連結現在遵循WCAG標準。 先前,標題中的帳戶連結包含重複的ID,導致WCAG驗證失敗。
- 應用程式現在會優先處理商店標誌影像的商店設定,而非版面配置。 之前,標誌影像的大小是固定的,不會因商店而異。
- 應用程式現在會在使用標準Adobe Commerce主題的店面頁面上顯示一致的頁面元素。 之前,並非所有樣式都會套用至空白主題,因此並非所有頁面元素都會顯示在使用此主題的頁面中。 (例如,「我的訂單」頁面搜尋字段中沒有放大鏡圖示。)
翻譯和地區設定
- 在配置內嵌翻譯時,添加到字串中的括弧不再溢出。 以前,
escapeHtmlAttr
該方法將括號轉換為 HTML 實體代碼。 GitHub-32000
- 管理中不可翻譯的片語現在可以翻譯。 (此提取請求有助於使所有管理員字串可本地化的持續努力。 GitHub-11175
- 範本中用來管理儲存的付款方式(我的帳戶 > 儲存的付款方式 )的文字字串現在可以翻譯。 GitHub-31211
- 從管理員傳送的訂購電子郵件現在使用商店地區設定,而不是與管理員帳戶關聯的地區設定。 GitHub-26521
UI
- 管理員頁尾現在顯示正確的產品版本。
- 來源的分頁現在會在管理員出貨建立期間如預期般顯示。
- 當您使用自定義日期屬性篩選產品且管理員用戶區域設置為 時
en_GB
,產品網格篩選器現在可正常工作。
- 現在,在 iOS 裝置 上的產品頁面圖片庫放大鏡中,指縮放手勢可以正常運作。
- 管理員產品網格線的分頁搜尋結果現在按預期從每個搜尋頁面一個分页開始。
- 已解決縮放時購物車显示的異常。 以前,縮放此頁面時,顯示元素會重疊。
- 管理員邀請頁面(管理員 行銷 > 私人銷售 > 邀請)上的選項卡已解決對齊方式問題。 以前,已被客戶接受的邀請的選項卡顯示未對齊。 GitHub-333
- 結帳時顯示的訂單檢閱頁面PayPal快速結帳現在可成功載入。 以前,範本包含未使用的 Update 傳遞 方法 按鈕,該方法在呈現期間僅由腳本部分隱藏頁面。 GitHub-32006
- 現在,當存在冗長的評分名稱時,商品頁面的“買家評論”部分中的評分星級和評論文本間距正確。 GitHub-31890
- 選項現在按預期顯示在“存檔發票”、“裝運”和“貸項通知單”頁面上的“作”下拉清單中。
- 現在,當元件
timeOnly
選項設置為 “是”時datetime
,應用程式將顯示正確的時間值。GitHub-23157
- 現在,您可以在管理 內容 > 介面工具集 上建立新介面工具集後移除配置更新。 GitHub-29936
- 拿掉 版面更新 按鈕現在可在您從管理 內容>小組件 添加的任何佈局上按預期工作。以前,在添加多個佈局時,此按鈕不適用於第一個選擇的佈局以外的任何佈局。 GitHub-30286
- 應用程式現在會使用在版面配置檔案中設定的頁面標題,作為客戶帳戶編輯檔案的瀏覽器頁面標題。 之前,
Magento\Customer\Controller\Account\Edit
控制器動作強制頁面標題值為Account Information
。 GitHub-30724
-
這些頁面已新增核取方塊,允許商家在顯示和隱藏密碼之間切換:
- 客戶登入
- 客戶註冊
- 客戶編輯(「變更密碼」區段)
- 客戶設定新密碼 GitHub-31557
- 拿掉了網格單元格中的冗餘標題,當管理員在更改屬性集後將產品添加到分組產品集時,會出現該標題。 GitHub-30911
- 應用程式現在會在 客戶 > 登入 頁面的登入區域上顯示
DateRange
篩選器。 之前,應用程式顯示Text
篩選器。 GitHub-30328
- JavaScript已從範本檔案中移除,並移至個別檔案,以減少管理員頁面上的轉譯問題。 以往,在已啟用HTML縮制的部署中,管理員頁面無法正常呈現。 應用程式顯示這個錯誤:
An error has happened during application run. See exception log for details
。 GitHub-32454
dropdownDialog
Widget現在僅載入其所需的可拖曳且可調整大小的jquery-ui
區塊。 以前,它會載入大量不必要的程式碼,這會增載入入時間並降低效能。 GitHub-32810
URL重新寫入
- 透過大量更新將產品指派給網站後,多網站部署中特定網站的產品URL重寫現在會如預期產生。
- 當父類別啟用URL索引鍵的 使用預設值 核取方塊時,應用程式現在會正確產生子類別的URL路徑。 先前,在多存放區檢視部署中使用不同的URL索引鍵時,在階層中移動類別會導致
url_path
值不正確。 GitHub-16202
- 應用程式現在會在您移動類別階層中的類別時,更新指派給所有存放區範圍的類別
url_path
。 以前,在階層中移動類別會導致url_path
不正確。
- 使用自訂URL從管理員建立的URL重新導向現在可成功運作。 之前,GraphQL會快取來自GraphQL
urlResolver
查詢的回應,並在URL重寫更新後傳回舊值。
- 現在從網站移除產品時,會按預期移除產品URL重寫功能。 GitHub-24184
- 新增了
main_table
對集合store_id
函數app/code/Magento/UrlRewrite/Model/ResourceModel/UrlRewriteCollection.php
中的addStoreFilter
引用。以前,只要在還包含store_id
一列的表上將 新增join
到 集合,就會出現問題。GitHub-31853
- REST 端點現在會
PUT /V1/products/:sku
重新生成產品URL按預期重寫。 以前,端點重新生成產品url_key
值,但不會重寫URL。 GitHub-30316
使用者
- 您現在可以儲存有效的新使用者角色(管理員 系統 > 許可權 > 使用者角色),並選取整個
Catalog
樹狀結構,不包括Edit Product Design
( 目錄 > 詳細目錄 > 產品 > 編輯產品設計)。 之前,應用程式沒有儲存此角色的使用者所做的產品變更,且會顯示此錯誤:Not allowed to edit the product's design attributes
。 GitHub-31973
- 應用程式現在會在為新管理員產生電子郵件時,使用正確的自訂電子郵件範本。 以前,應用程式使用舊的預設範本,省略了管理員的名字和姓氏。
- 應用程式現在會在傳送電子郵件給新使用者時,使用正確的電子郵件範本。 以前,即使選取了自訂範本,應用程式也會使用預設範本。
版本CMS
- 應用程式現在會在您變更版面配置後,將正確的主題套用至CMS頁面。 先前,無論指派給頁面的佈景主題為何,應用程式都會在您儲存版面變更後,將指派的佈景主題變更為Luma。
- 現在,具有受限制角色的管理員可以成功新增、更新或複製其有權存取的頁面(這些頁面已指派給階層節點)。 之前,應用程式在這些情況下會擲回嚴重錯誤。
影片
- 現在當進階JavaScript套件組合啟用及使用時,產品庫可如預期提供影片。 GitHub-32501
- 屬於可配置產品的簡單產品的YouTube影片現在可以正常運作。 之前,影像是依ID而非位置排序。 因此,部分影片被視為影像。 GitHub-29690
Visual Merchandiser
- 使用Visual Merchandiser載入的「管理員」類別頁面效能已改善。 載入 Admin 類別 頁面不再產生大型資料庫查詢。
Web API 框架
- 目錄 API 現在透過添加新值和刪除舊值來正確更新產品的自定義選項值。 以前,API 不會刪除舊值。
/V1/guest-carts/:cartId/billing-address
POST 現在以整數而非字串的形式返回位址ID。
網站限制
- 現在,購物者將被重定向到他們在提示登錄之前嘗試訪問的頁面。 以前,在啟用了網站限制且“限制模式”設置為“專用銷售:僅 登錄”的 部署中,購物者被重定向到商店首頁。
控件
- 管理員現在可以刪除所有Widget版面更新。 先前,當Widget有多個版面更新時,管理員只能刪除第一個版面。
- 按一下產品Widget上的 加入購物車 按鈕不再導致頁面重新載入。 先前,按一下產品Widget上的 加入購物車 按鈕導致目前頁面在產品加入購物車之前重新載入。
- 當 錨點自訂文字 欄位空白時,TinyMCE中的CMS階層節點連結Widget現在會如預期呈現階層連結。
希望清單
- 當您從願望清單中按兩下 產品的編輯項 按鈕時,應用程式不再重置可配置產品的配置設置。 GitHub-32119
- 現在,當您在願望清單中使用可自定義文件選項更新產品時,應用程式會顯示正確的產品價格。 之前,應用程式顯示的產品價格錯誤,也不會顯示上傳檔案的連結。
- 具有多個願望清單的客戶的願望清單中的產品總數現在與願望清單中的項目數量相匹配。 之前缺貨的產品會包含在產品總數中。
- 將產品新增至訂單後,應用程式現在會從願望清單中移除產品。 GitHub-30260
- 購物者現在可以從願望清單新增相關產品至購物車。 以前,當購物者按一下「相關產品」區段的「選取全部」連結時,應用程式僅新增可設定的產品,而非可設定的產品及其相關產品。 GitHub-32274
已知問題
問題: 停用 reCAPTCHA 時JavaScript錯誤。 如果已停用 reCAPTCHA 進行簽出,則簽出繼續進行,但應用程式會在控制台記錄檔中顯示 Uncaught TypeError
錯誤。 此問題會在隨後的版本中修正。
問題: 內容安全性原則錯誤。 店面在主控台記錄檔中顯示下列錯誤: The Content-Security-Policy directive frame-ancestors does not support the source expression unsafe-inline
。 店面效能不受影響。
問題: 禮品卡金額的PayPal信用卡顯示異常。 啟用PayPal信用並設定多個禮品卡金額時,如果購物者變更禮品卡價值的金額,店面不會更新分期付款的金額。 Adobe Commerce 2.4.4和Magento Open Source 2.4.4將修正此問題。
問題: SKU新增至購物車的產品無法使用 新增至訂單 按鈕。 在由SKU新增產品至訂單後,當您按一下 新增至訂單 按鈕時,應用程式會顯示此錯誤訊息: An error has happened during application run
。 產品未新增至購物車。 因應措施:使用「新增產品」功能。
問題: GraphQL category
和categoryList
查詢會忽略類別許可權,這些許可權會判斷共用目錄中的類別是否已隱藏或公開。 店面目前會顯示已指派或未指派給共用目錄的所有類別。 這會影響Adobe Commerce 2.4.3部署,這些部署會實作已啟用B2B共用目錄的PWA店面。
社群貢獻
我們感謝更廣泛的Magento Open Source社群,並按讚感謝他們對此次發佈的貢獻。
社群工程團隊Magento貢獻者會依月份、季度和年度維護最佳貢獻個人和合作夥伴的清單。 從該貢獻者頁面中,您可以在 GitHub 上追隨指向其合併 PR 的連結。
合作夥伴的貢獻
下表重點介紹了合作夥伴的貢獻。 此表列出了貢獻提取請求的合作伙伴、外部提取請求以及與之關聯的 GitHub 問題編號(如果可用)。
[僅限PaaS]{class="badge informative" title="僅適用於雲端專案(Adobe管理的PaaS基礎結構)和內部部署專案的Adobe Commerce 。"}
個人貢獻者
下表列出我們社群成員的貢獻。 此表格列出外部提取請求、與其相關聯的GitHub問題編號(如果有的話),以及提出提取請求的社群成員。
[僅限PaaS]{class="badge informative" title="僅適用於雲端專案(Adobe管理的PaaS基礎結構)和內部部署專案的Adobe Commerce 。"}
系統需求
我們的技術棧疊是以PHP和MySQL為基礎所建置。 如需詳細資訊,請參閱系統需求。
安裝和升級指示
您可以使用 Composer🔗 安裝 Adobe Systems Commerce 2.4.3。
遷移工具工具組
資料移轉工具可協助將現有Magento 1.x存放區資料傳輸至Magento 2.x。此命令列介麵包含驗證、進度追蹤、記錄和測試功能。 如需安裝指示,請參閱安裝資料移轉工具。 請考慮探索或參與資料移轉存放庫。
程式碼移轉工具組可協助將現有的Magento 1.x存放區擴充功能和自訂功能傳輸至Magento 2.x。命令列介麵包含轉換Magento 1.x模組和版面的指令碼。