撰寫器相依性更新

下列撰寫器相依性已更新至具有限制的最新版本:

  • colinmollenhour/credis (1.13.0)
  • guzzlehttp/guzzle (^7.4.2)
  • laminas/laminas-captcha (以條件約束^2.12更新)
  • laminas/laminas-db (^2.15.0)
  • laminas/laminas-di (^3.7.0)
  • laminas/laminas-escaper (~2.10.0)
  • laminas/laminas-eventmanager (^3.5.0)
  • laminas/laminas-feed (^2.17.0)
  • laminas/laminas-mail (^2.16.0)
  • laminas/laminas-mvc (^3.3.3)
  • laminas/laminas-server (^2.11.1)
  • laminas/laminas-servicemanager (^3.11.0)
  • laminas/laminas-validator (^2.17.0)
  • league/fly (2.4.3)
  • monolog/monolog (^2.5)
  • phpmd/phpmd (^2.12.0)
  • phpstan/phpstan (^1.5.7)
  • phpunit/phpunit (~9.5.20)
  • php-cs-fixer (^3.4.0)
  • webonyx/graphql-php (14.11.6)

已移除laminas/laminas-sessionlaminas/laminas-textlaminas/laminas-view相依性。

其他升級和取代

  • DHL整合結構描述已從v6.0更新至v6.2。

  • USPS送貨的預設閘道URL已更新為使用https而非http

  • 已將Froogaloop資料庫取代為Vimeo Player.js資料庫(2.16.4)。

  • grunt-eslint (NPM)程式庫已升級至最新版本。

  • 已將jQuery Storage資料庫取代為julien-maurel/js-storage

  • php-cs-fixerphpcs靜態程式碼分析工具現在相容於PHP 8.x。

  • glob.js相依性(使用條件約束升級至~7.2.0)

  • serve-static.js相依性(以條件約束~1.14.2升級)

  • underscore.js相依性(NPM) (1.14.2)

  • moment-timezone-with-data.js (0.5.34)

  • 資料庫jquery/jquery-cookie已取代為js-cookie/js-cookie

  • 已更新jarallax.jsjaralax-video.js資料庫,以使用最新版的Vimeo REST API。

協助工具更新

此版本的重點在於在Venia (PWA)上建立更易感知、可操作、可理解和強大的店面體驗。 這些增強功能包括:

  • 搜尋結果摘要資訊現在會向熒幕助讀程式使用者宣佈
  • 現在會在新頁面檢視載入時通知熒幕朗讀程式
  • 已改善對比和鍵盤協助工具

Google Analytics

Google已透過與GTag的整合更新網頁應用程式中AdWords和Analytics的追蹤和整合機制。 將Google功能整合至網站頁面,可讓您更有機會透過Google服務追蹤及管理內容。 Adobe Commerce有一組內建模組,包括Google AdWords、Analytics、Optimizer和TagManager,可運用舊API與Google服務整合。 在此版本中,我們已使用GTag方法重新實施作業這項整合​。 請參閱從analytics.js移轉至gtag.js (Universal Analytics) 🔗

GraphQL

GraphQL效能增強功能包括:

  • 開發人員和管理員在部署時或在變更生產環境中的屬性時,可更快速地重建統一的店面GraphQL架構。 如果因為任何原因必須重建GraphQL結構描述,購物者體驗到的頁面載入速度也會大幅加快。

  • 新增在GraphQL API中使用JSON Web權杖(JWT)來使用授權權杖到期日期/時間的功能。

  • bin/magento config:set graphql/session/disable 1命令可讓商家針對所有GraphQL作業完全停用工作階段Cookie的建立。 依預設,應用程式Open Source會建立這些Cookie並仰賴它們來取得授權,而這會影響效能。 日後,我們建議使用權杖作為GraphQL要求的唯一授權形式。 我們不建議單獨使用工作階段Cookie或將其與授權Token搭配使用。 請參閱GraphQL授權

  • 現在起,您只需在需要時使用類別代理程式,便可在GraphQL作業中啟動工作階段Cookie。

  • 工作階段使用已從GraphQL中的http標題處理器(例如商店、客戶或貨幣)中移除。

如需這些增強功能的詳細資訊,請參閱GraphQL開發人員指南

詳細目錄

已增強詳細目錄範本安全性。

頁面產生器

Page Builder v.1.7.2與Magento Open Source 2.4.5相容。

頁面產生器欄版面配置包含下列增強功能:

  • 欄現在已公開,允許使用者控制店面的欄設定。

  • 欄大小調整現在支援由使用者動作觸發的換行。

付款

Apple Pay現在可供所有執行部署並啟用Payment Services的商家使用。 此付款方式不需要購物者輸入其信用卡或扣帳卡詳細資料。 Apple Pay可在產品詳細資料頁面、迷你購物車、購物車和結帳工作流程中取得。 商家可以開啟此功能。

PayPal

  • 西班牙和義大利的商戶現在可以提供PayPal Pay Later給購物者。

  • 現在,管理員可以在結帳、迷你圖、購物車和產品頁面中預覽PayPal、點數和「稍後付款」按鈕。 預覽會顯示這些按鈕在店面啟用和呈現時的外觀。

Braintree

  • Braintree已終止KOUNT防欺詐整合。 該工具已從Magento Open Source程式碼基底中移除。

  • 已將​ 永遠要求3DS ​選項新增至Admin。

PWA Studio

PWA Studio v.12.5.x與Magento Open Source 2.4.5相容。

此版本的新功能包括:

  • 購物者行為資料會收集至PWA Studio店面,以供網站分析服務使用。 商家現在可以根據需要訂閱及延長這些活動。

  • 商家現在可以從管理員(Google Tag Manager)選取要部署的服務。

如需有關增強功能和錯誤修正的資訊,請參閱PWA Studio發行版本。 如需PWA Studio版本及其相容的Magento Open Source核心版本的清單,請參閱版本相容性

已修正的問題

我們已修正Magento Open Source 2.4.5核心程式碼中的數百個問題。

安裝、升級、部署

  • 您現在可以重新命名資料修補程式,並將舊類別名稱新增為patch_list資料庫表格中的別名。 Magento Open Source現在會在套用修補程式之前,檢查資料庫中是否已有資料修補程式別名。 之前,applicationOpen Source在這些情況下會擲回錯誤。
  • 當您嘗試從管理員將管理員URL變更為自訂URL時,Magento Open Source不再擲回例外狀況。 之前,在變更管理員URL後,您無法登入。 GitHub-35416
  • 商戶現在可以成功從具有Klarna的Magento Open Source 2.4.2部署升級至Magento Open Source 2.4.3。GitHub-33760
  • Magento Open Source Analytics的路徑不再以硬式編碼顯示。 以前,當一台伺服器上安裝多個Magento Open Source執行個體時,這個硬式編碼路徑會導致衝突。 GitHub-29373

協助工具

  • 購物袋 ​按鈕現在提供其狀態的程式化或文字指示。 熒幕助讀程式的使用者會獲知按一下此按鈕將展開其他內容,或相關內容會展開或收合。 以前,此按鈕不提供其狀態的程式化或文字指示。
  • 付款資訊信用卡選項文字元素或文字影像現在已符合WCAG 2.0的要求,標準文字的最低色彩對比率為4.5:1 (24px)或14pt (19px) (若是粗體)。 先前,這些量度不符合預期的對比率。
  • 通訊錄 > 通訊 > 帳戶資訊 ​自訂焦點指標現在提供的對比率至少是背景顏色的3:1。
  • 篩選器 ​和​ 排序 ​按鈕文字現在符合WCAG 2.0要求的標準文字18pt (24px)或14pt (19px)的最低色彩對比率4.5:1 (若是粗體顯示)。 以前,輪播的導覽按鈕不符合這些最低對比要求。
  • 熒幕助讀程式只會在導覽至Venia頁首和頁尾時朗讀「Venia」這個字。 之前,同一個字詞會連續宣佈兩次。
  • 觸發下拉式清單的按鈕現在會提供資訊給熒幕助讀程式,以指示其展開或收合狀態以及可存取的名稱。
  • 呈現新頁面檢視時,會通知熒幕助讀程式使用者。 先前,當頁面標題變更時,不會宣佈標題變更。

Adobe Stock

  • 使用者現在可以成功登出Adobe Stock。

套裝產品

  • 您現在可以使用PUT /V1/products端點來更新特定網站的產品價格屬性。 先前,如果針對特定商店檢視覆寫了某些產品屬性,您就無法在該商店檢視中更新該產品的價格屬性。
  • 現在,套用產品子選取規則時,Magento Open Source可正確計算套件組合產品的購物車總價。

快取

  • 清除Magento Open Source快取並啟用use_stale_cache時,Admin中不再顯示完整頁面快取為已停用。
  • 快取清除後,New Relic部署標籤現在會如預期運作。 GitHub-32649

購物車與結帳

  • 結帳工作流程帳單步驟上的地址搜尋快顯視窗不再造成DOM錯誤。
  • addProductsToCart突變現在可正確搭配多個產品運作。 以前,此查詢傳回第一個具有精確小計的產品,但傳回其他產品的小計0。
  • 現在已處理SKU新增之受限制產品的許可權例外。 購物者現在會在店面看到適當的訊息,且錯誤表格中的數量欄位已停用。 之前,applicationOpen Source擲回類似以下的例外狀況: There has been an error processing your request
  • 在停用購物車價格規則後更新受影響報價的SQL查詢已最佳化,以避免鎖定整個報價表。
  • 訪客結帳停用時,具有全域帳戶共用的購物者便不再需要在多網站部署中登入次要網站。 現在,當購物者導覽至子網域時,系統會載入客戶資料。 購物者不再被要求再次登入,並且會顯示先前的購物車內容。
  • 當多重地址結帳中移除單一數量地址專案時,結帳工作流程中的地址下拉式清單值不再變更報價中的剩餘專案。 先前,在多位址結帳期間,當產品從報價單中移除時,所有產品的位址下拉式清單值都會變更為預設值。
  • 當產品無存貨時,cart查詢不再傳回null回應。 已將包含錯誤訊息的新errors元素匯入回應。 先前,當您使用無庫存產品執行查詢時,應用程式Open Source在回應中的items區段下顯示null值。 請參閱購物車查詢
  • 當訪客購物者在將產品新增至購物車之後建立帳戶,再繼續結帳時,現在可如預期使用送貨方法。 過去,當訪客在建立帳戶之前將產品加入購物車時,結帳期間無法使用送貨方法。 將其他產品加入購物車後,即可使用送貨方法。
  • 未選取​ 允許國家/地區 ​欄位中的選項時,購物者現在可以將產品新增至購物車。
  • 當​ 啟用持續性 ​設定為​ ​時,在工作階段逾時後,購物車內容和登入狀態現在會如預期重新載入。 GitHub-35182
  • 當購物者針對擁有多個送貨地址的訂單從出貨頁面導覽至結帳工作流程中的購物車頁面時,迷你購物車小計現在會正確更新。 以前,小計是兩倍。
  • 啟用​ 啟用持續性 ​時,迷你購物車現在會在工作階段逾時後顯示先前新增的產品。 GitHub-35183
  • 商戶現在可以建立​ 退款送貨的銷退折讓單(包括 稅捐) ​設為–0.01,現在可以將此金額設為0。 之前,無法在下列條件下建立銷退折讓單。

購物車價格規則

  • Parent Only屬性範圍現在已在購物車規則條件中正確使用。

目錄

  • 透過商店檢視的PUT /V1/products/更新產品名稱時,產品URL金鑰現在保持不變。 之前,系統會根據新產品名稱產生新的URL金鑰並指派給產品,這會覆寫該商店檢視中的URL金鑰。
  • 從頁面產生器產品Widget設定為轉盤模式,將產品新增至類別不再觸發頁面重新載入。
  • 設定為​ 不個別顯示的產品 ​不再出現在目錄進階搜尋結果中。
  • 現在可在「大量屬性更新」頁面上正確更新動態套件組合屬性。 先前,動態SKU ​屬性仍設為​ ,即使這些屬性已在大量更新頁面上停用。
  • 目錄規則現在可以使用增量索引子正確套用,而不是完全重新索引。
  • 您現在可以成功地在多頁產品清單的清單與格線檢視之間切換。 先前,當您在切換至格線檢視之前導覽至多頁產品清單檢視的最後一頁時,應用程式「開啟Source」會顯示此錯誤: Unfortunately there are no products in this category on our website currently
  • 管理員動作記錄報告現在會依預期顯示更新的產品ID和更新的狀態資訊。
  • 在完整重新索引後,觸發程式現在會如預期般還原到catalogrule_product_price資料表。 先前,在catalogrule_rulecatalogrule_product完整重新索引後,從catalogrule_product_price資料表中移除觸發程式。
  • 用於將產品指派給類別的類別規則不再隨機變更。
  • 具有領域限制存取權的管理員無法再全域更新類別。 先前,當多個網站使用相同類別但不同產品,以及許可權僅限於一個商店的管理員變更類別中的產品時,其他商店的產品選擇也會變更。
  • 當使用指定地區設定的非預設貨幣時,產品詳細資訊頁面現在會顯示正確的價格。 之前,店面上的編號未如預期本地化。
  • 現在,嘗試擷取具有重複記錄之產品的層級價格時,API和店面會顯示相同的錯誤訊息。 以前,PUT /V1/products/tier-prices傳回不正確的錯誤訊息。
  • Magento Open Source現在會在您嘗試新增尾端有連字型大小的產品URL金鑰時提供驗證錯誤訊息。 也提供資訊性工具提示文字。
  • 新的ConfigurableWishlistItem.configured_variant欄位已取代ConfigurableWishlistItem.child_sku欄位。 當客戶希望清單包含未設定的可設定產品時,後一個欄位會觸發內部錯誤。
  • 現在,在大量屬性更新期間,只會針對選取的存放區產生URL重寫,以變更產品可見度。 之前,大量屬性更新會為錯誤的存放區建立URL重寫。
  • 啟用Synchronize widget products with backend storage設定時,應用程式Open Source會將最近的檢視產品資料新增至catalog_product_frontend_action資料庫資料表。 新增記錄時包含客戶或訪客ID。 如果客戶ID和訪客ID為Null,回應中的recently_viewed_product區段現在為空白。 因此,在傳送customer/section/load Ajax要求時,應用程式「開啟Source」可依據客戶或訪客ID正確篩選最近檢視的產品。 以前,回應會包含catalog_product_frontend_action資料庫資料表中所有可用的資料,因為沒有檢查空白的客戶或訪客ID。
  • 管理員現在可以從「管理員幻燈片」面板變更購物者購物車中的可設定產品選項。 之前,「幻燈片」面板無法正常工作。
  • 現在頁面保存對子產品的更改時,將按預期清除可配置產品父級的緩存。 以前,由於未清除緩存,因此不會在店面配置產品頁面上選擇更改。 GitHub-34508
  • 產品清單現在可在「管理」中正確呈現。 之前,產品清單不會呈現,Magento Open Source顯示此錯誤: Item (Magento\Catalog\Model\Product\Interceptor) with the same ID "<ID>" already existsGitHub-33145
  • 目錄價格範圍從​ 網站 ​變更為​ 全域 ​後,產品詳細資料頁面和多商店部署中的店面搜尋中的產品價格現在相同。 先前,「目錄搜尋結果」頁面顯示​ 全域 ​價格,而產品詳細資料頁面顯示​ 網站 ​價格。 GitHub-34074
  • 當​ 價格導覽步驟計算 ​設定為​ 手動 ​時,階層導覽現在會顯示具有預期最高價格的產品。
  • 啟用​ 記住類別分頁 ​時,您現在可以變更類別中顯示的每頁產品限制。 先前Cookie form_key和UI form_key不同,Magento Open Source會顯示此錯誤: Invalid Form Key. Please refresh the page
  • EAV索引子現在會以型別int處理產品ID,以避免可能的效能問題。
  • 現在,當您新增名稱包含「。」的新影像後,可成功產生新產品快取 然後儲存產品並清除影像快取。 GitHub-32699
  • 當您嘗試從產品頁面建立屬性而未完成「管理員」欄位時,Magento Open Source現在會如預期顯示錯誤訊息。 GitHub-33099

  • 當首頁包含多個目錄清單時,所有目錄產品清單上的產品評等現在都是正確的。 GitHub-33867