[僅限PaaS]{class="badge informative" title="僅適用於雲端專案(Adobe管理的PaaS基礎結構)和內部部署專案的Adobe Commerce 。"}
MDVA-39521:無法透過GraphQL設定購物車上的送貨地址
MDVA-39521修補程式可解決使用者無法透過GraphQL在電話號碼為空白的購物車上設定送貨地址的問題。 安裝品質修補工具(QPT) 1.1.2時,即可使用此修補程式。 修補程式ID為MDVA-39521。 請注意,此問題已排程在Adobe Commerce 2.4.4中修正。
受影響的產品和版本
已為Adobe Commerce版本建立修補程式:
- Adobe Commerce (所有部署方法) 2.4.2-p1
與Adobe Commerce版本相容:
- Adobe Commerce (所有部署方法) 2.4.0 - 2.4.3
NOTE
此修補程式可能適用於其他發行了「品質修補程式」工具的版本。 若要檢查修補程式是否與您的Adobe Commerce版本相容,請將
magento/quality-patches套件更新至最新版本,並在Quality Patches Tool上檢查相容性:搜尋修補程式頁面。 使用修補程式ID作為搜尋關鍵字,以尋找修補程式。問題
使用者無法透過GraphQL以空白電話號碼在購物車上設定送貨地址,儘管Show Telephone設定為選用。
要再現的步驟:
-
建立簡單的產品。
-
移至 商店 > 組態 > 客戶 > 客戶組態 > 名稱和地址選項,並將[顯示電話]設定為選擇性。
-
透過GraphQL請求建立空的購物車。
code language-graphql mutation { createEmptyCart } -
將產品新增至購物車。
code language-graphql mutation { addSimpleProductsToCart( input: { cart_id: "{ CART_ID }" cart_items: [ { data: { quantity: 1 sku: "24-MG04" } } ] } ) { cart { items { id product { sku stock_status } quantity } } } } -
新增地址:GRAPHQL變數。
code language-graphql { "cartId": "6Efw00UbjPoP5cvTFhsswDTjpxs0Xupt" }code language-graphql mutation ($cartId: String!) { setShippingAddressesOnCart(input: {cart_id: $cartId, shipping_addresses: {address: {firstname: "John", lastname: "Doe", company: "Company Name", street: ["820 Burrard Street"], city: "Vancouver", region: "BC", postcode: "V6Z 2J1", country_code: "CA", telephone: "123-456-0000", save_in_address_book: false}}}) { cart { shipping_addresses { firstname lastname company street city postcode telephone country { code label } } } } }結果:
code language-graphql { "data": { "setShippingAddressesOnCart": { "cart": { "shipping_addresses": [ { "firstname": "John", "lastname": "Canada", "company": "Company Name", "street": [ "820 Burrard Street" ], "city": "Vancouver", "postcode": "V6Z 2J1", "telephone": "123-456-0000", "country": { "code": "CA", "label": "CA" } } ] } } } } -
新增包含空白電話號碼的地址。
code language-graphql mutation ($cartId: String!) { setShippingAddressesOnCart(input: {cart_id: $cartId, shipping_addresses: {address: {firstname: "John", lastname: "Canada", company: "Company Name", street: ["820 Burrard Street"], city: "Vancouver", region: "BC", postcode: "V6Z 2J1", country_code: "CA", telephone: "123-456-0000", save_in_address_book: false}}}) { cart { shipping_addresses { firstname lastname company street city postcode telephone country { code label } } } } }
預期結果:
{
"data": {
"setShippingAddressesOnCart": {
"cart": {
"shipping_addresses": [
{
"firstname": "John",
"lastname": "Doe",
"company": "Company Name",
"street": [
"820 Burrard Street"
],
"city": "Vancouver",
"postcode": "V6Z 2J1",
"telephone": "",
"country": {
"code": "CA",
"label": "CA"
}
}
]
}
}
}
}
實際結果:
{
"data": {
"setShippingAddressesOnCart": {
"cart": {
"shipping_addresses": []
}
}
}
}
套用修補程式
若要套用個別修補程式,請根據您的部署型別使用下列連結:
- Adobe Commerce或Magento Open Source內部部署: Quality Patches Tool 指南中的>使用狀況Quality Patches Tool。
- 雲端基礎結構上的Adobe Commerce:雲端基礎結構上的Commerce指南中的升級和修補程式>套用修補程式。
相關閱讀
若要進一步瞭解「品質修補程式」工具,請參閱:
- 已發行品質修補程式工具:自助提供品質修補程式的新工具。
- 使用Quality Patches Tool檢查是否有修補程式可用於您的Adobe Commerce問題。
如需QPT中其他修補程式的詳細資訊,請參閱QPT中可用的修補程式區段。
recommendation-more-help
c2d96e17-5179-455c-ad3a-e1697bb4e8c3