「国を許可」で何も選択されていない場合、ユーザーが買い物かごに製品を追加できない
この記事では、「国を許可 が選択されていない場合に買い物かごに商品を追加できない、PHP 8.1 を使用した既知のAdobe Commerce 2.4.4 の問題に対するパッチを提供し す。
説明 description
環境
Adobe Commerce 2.4.4 と PHP 8.1
問題/症状
「国を許可 が選択されていない場合、ユーザーは買い物かごに製品を追加でき せん。
再現手順 :
- Commerce Admin にログインします。
- ストア に移動
>
設定>
一般>
国オプション . - 国を許可 フィールドですべてのオプションを選択解除します。
- 「 設定を保存 」をクリックして、設定を保存します。
- ストアフロントに移動して、買い物かごに製品を追加してみてください。
期待される結果:
買い物かごに製品を追加できます。
実際の結果:
買い物かごに製品を追加することはできません。 次のコンソールエラーが表示されます。
Failed to load resource: the server responded with a status of 400 (Bad Request)
customer-data.js:87 Uncaught Error: [ object Object]
at Object.<anonymous> (customer-data.js:87:23)
at fire (jquery.js:3500:50)
at Object.fireWith [ as rejectWith] (jquery.js:3630:29)
at done (jquery.js:9798:30)
at XMLHttpRequest.<anonymous> (jquery.js:10057:37)
原因
複数選択の設定で選択された項目がない場合、Adobe Commerce設定は null
を取得します。 この設定は、8.1 より前の PHP バージョンでも正常に処理されます。しかし、PHP 8.1 では、PHP 8.1 の内部関数の nullable でない引数に null を渡すことは非推奨にするというエラーが発生し、適切に動作しません。
解決策 resolution
ソリューション
この問題を解決するには、次のパッチを適用します。
パッチの適用方法
手順については、Commerce on Cloud ガイドの パッチの適用を参照してください。
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f