Magento Open Source 2.4.7 リリースノート
Magento Open Source 2.4.7 では、PHP 8.3 がサポートされるようになりました。何百もの品質の修正と機能強化が含まれています。 Core Composer の依存関係とサードパーティ ライブラリが、利用可能な最新バージョンにアップグレードされました。 このリリースでは、カスタム属性とGraphQL リゾルバーキャッシュのGraphQLの適用範囲が拡大されています。 また、最近更新された FedEx および UPS サービスのサポートも導入されています。
その他のリリース情報
これらの機能のコードは、Magento Open Source コアコードのリリースにバンドルされていますが、これらのプロジェクトの一部も個別にリリースされています。 これらのプロジェクトのバグ修正は、各プロジェクトのドキュメントで利用できる別のプロジェクト固有のリリース情報に記載されています。
Magento Open Source 2.4.7 のハイライト
このリリースのハイライトは次のとおりです。
セキュリティ機能の強化
このリリースには、Adobe Commerce 2.4.6-p5、2.4.5-p7、2.4.4-p8 に含まれているものと同じセキュリティ修正と platform セキュリティの改善が含まれています。 修正された問題の最新の説明については、Adobe セキュリティ速報 を参照してください。
これらの問題に関連する確認された攻撃は、今日まで行われていません。 ただし、特定の脆弱性が悪用されて、顧客情報にアクセスしたり、管理者のセッションを引き継いだりする可能性があります。 これらの問題のほとんどは、攻撃者が最初に管理者へのアクセス権を取得する必要があります。 そのため、管理者を保護するために必要なすべての措置をとることをお勧めします。これには、以下の取り組みが含まれますが、これらに限定されません。
- IP許可リストに加える
- 二要素認証
- vpn の使用
/adminではなく一意の場所の使用- 適切なパスワードハイジーン
その他のセキュリティ機能強化
このリリースのセキュリティの強化により、最新のセキュリティのベストプラクティスへのコンプライアンスが向上します。
-
生成されないキャッシュキーの動作の変更:
- ブロックの生成されないキャッシュキーに、自動的に生成されるキーのプレフィックスとは異なるプレフィックスが含まれるようになりました。 (生成されないキャッシュキーは、テンプレートディレクティブ構文または
setCacheKeyまたはsetDataメソッドで設定されるキーです)。 - ブロックの生成されないキャッシュキーには、文字、数字、ハイフン(–)、アンダースコア(_)のみを含める必要があります。
- ブロックの生成されないキャッシュキーに、自動的に生成されるキーのプレフィックスとは異なるプレフィックスが含まれるようになりました。 (生成されないキャッシュキーは、テンプレートディレクティブ構文または
-
自動生成されたクーポンコード数の制限。 Magento Open Sourceでは、自動生成されるクーポンコードの数を制限するようになりました。 デフォルトの最大値は 250,000 です。 マーチャントは、新しい Code Quantity Limit 設定オプション(Stores/Settings:Configuration/Customers/Promotions)を使用して、多くのクーポンでシステムが圧倒される可能性を防ぐことができます。
-
デフォルトの管理者 URL 生成プロセスの最適化。 デフォルトの管理者 URL の生成が最適化されて、ランダム性が向上し、生成された URL を予測しにくくなりました。
-
新しいフルページキャッシュ設定は、HTTP
{BASE-URL}/page_cache/block/esiエンドポイントに関連するリスクを軽減するのに役立ちます。 このエンドポイントは、Commerceのレイアウトハンドルおよびブロック構造から無制限で動的に読み込まれるコンテンツフラグメントをサポートしています。 新しい Handles params size 設定では、このエンドポイントのhandlesパラメーターの値を設定します。このパラメーターによって、API あたりの最大ハンドル数が決定されます。 このプロパティのデフォルト値は 100 です。 マーチャントは、管理者(Stores/Settings:Configuration/System/Full Page Cache/Handles params size)からこの値を変更できます。 Varnish を使用するようにCommerce アプリケーションを設定する を参照してください。 -
支払いページでのスクリプトの整合性の検証に関する PCI 4.0 要件に準拠するために、Subresource Integrity (SRI)のサポートを追加 しました。 サブリソースの整合性(SRI)のサポートは、ローカルファイルシステムに存在するすべてのJavaScript アセットの整合性ハッシュを提供します。 デフォルトの SRI 機能は、管理エリアとストアフロントエリアの支払いページにのみ実装されています。 ただし、マーチャントは、デフォルトの設定を他のページに拡張できます。 詳しくは、Commerce PHP 開発者ガイドの サブリソースの整合性 を参照してください.
-
コンテンツセキュリティポリシー(CSP)の変更 - PCI 4.0 の要件に準拠するためのAdobe Commerce コンテンツセキュリティポリシー(CSP)の設定の更新と機能強化。 詳しくは、Commerce PHP 開発者ガイドの コンテンツセキュリティポリシー を参照してください。
-
Commerce管理エリアとストアフロントエリアの支払いページ用のデフォルトの CSP 設定が
restrictモードになりました。 その他のすべてのページでは、デフォルト設定はreport-onlyモードです。 2.4.7 より前のリリースでは、CSP はすべてのページに対してreport-onlyモードで設定されていました。 -
CSP でインラインスクリプトの実行を許可する nonce プロバイダーを追加しました。 nonce プロバイダーは、各リクエストに対して一意の nonce 文字列を容易に生成できるようにします。 その後、文字列が CSP ヘッダーにアタッチされます。
-
管理の注文を作成ページとストアフロントのチェックアウトページの CSP 違反をレポートするカスタム URI を設定するオプションを追加しました。 設定を追加するには、管理者から、または URI を
config.xmlファイルに追加します。note note NOTE CSP 設定を restrictモードに更新すると、管理およびストアフロントの支払いページで既存のインラインスクリプトがブロックされる可能性があり、ページの読み込み時に次のブラウザーエラーが発生します。Refused to execute inline script because it violates the following Content Security Policy directive: "script-src。 許可リスト設定を更新して、必要なスクリプトを許可することで、これらのエラーを修正します。 2}Commerce PHP 開発者ガイド トラブルシューティング を参照してください。
-
-
REST およびGraphQL API を通じて送信される支払い情報のネイティブレート制限。 マーチャントは、REST およびGraphQLを使用して送信される支払い情報に対して、 レート制限を設定 できるようになりました。 この保護レイヤーの追加により、カード攻撃の防止がサポートされ、多くのクレジットカード番号を一度にテストするカード攻撃の量が減少する可能性があります。 これは、既存の REST エンドポイントのデフォルト動作の変更です。 レート制限 を参照してください。
-
isEmailAvailable GraphQL クエリと(V1/customers/isEmailAvailable) REST エンドポイントのデフォルトの動作が変更されました。 デフォルトでは、API は常に
trueを返すようになりました。 マーチャントは、管理で「ゲストチェックアウトログインを有効にする 」オプションをyesに設定することで元の動作を有効にすることができますが、これにより、顧客情報が認証されていないユーザーに公開される可能性があります。
プラットフォームの機能強化
このリリースのプラットフォームのアップグレードにより、最新のセキュリティのベストプラクティスへのコンプライアンスが向上します。
Magento Open Source 2.4.7 には、次のプラットフォームアップグレードが含まれています。
- PHP 8.3 互換。 このリリースでは、PHP 8.3 のサポートが導入されています。Magento Open Sourceでは、PHP 8.3 と 8.2 の両方をサポートするようになりました。PHP 8.2 は、2025 年 12 月のサービス終了(EOS)日までサポートされます。 2025 年 12 月以降、2.4.7 デプロイメントを実行しているすべてのマーチャントは、PHP 8.3 に移行する必要があります。
Magento Open Source 2.4.7 は、アップグレードの目的でのみ PHP 8.1 と互換性があります。 PHP 8.1 はサポートされておらず、推奨されていません。 Magento Open Source 2.4.7 コアコード、バンドルされた拡張機能、Adobeが所有するすべての拡張機能および SaaS サービスは、PHP 8.3 と互換性があります。
-
RabbitMQ 3.13 のサポート。 このリリースは最新バージョンの RabbitMQ 3.13 と互換性があります。互換性は RabbitMQ 3.11 および 3.12 に残っており、それぞれ 2024 年 8 月と 2024 年 12 月までサポートされていますが、Adobeでは、RabbitMQ 3.13 でのみMagento Open Source 2.4.7 を使用することをお勧めします。
-
Composer 2.7.x。 Composer 2.2.x との互換性は維持されます。
-
Varnish cache 7.4 のサポート。 このリリースは、最新バージョンの Varnish Cache 7.4 と互換性があります。6.0.x および 7.2.x バージョンとの互換性は維持されますが、Magento Open Source 2.4.7 は Varnish Cache version 7.4 または version 6.0 LTS でのみ使用することをお勧めします。
-
Elasticsearch 8.11 互換性
-
OpenSearch 2.12 および OpenSearch 1.3 のサポート
-
Redis 7.2
-
extjsライブラリは最新バージョンのjsTreeに置き換えられました。 -
ライブラリ
jquery/fileUpload削除されました。
Magento Open Source コアコード内のすべてのJavaScript ライブラリと NPM の依存関係が、利用可能な最新バージョンに更新されました。 すべての Laminas ライブラリの依存関係は、PHP 8.3 と互換性のある最新バージョンに更新されました。
追加のアップグレード
-
Commerce UPS XML API ゲートウェイは、UPS が自社の {API セキュリティ モデル に対して行っている更新をサポートするために、新しい 0}Commerce UPS REST API に移行されました。 (UPS は、すべての API に対して OAuth 2.0 セキュリティモデル(ベアラートークン)を実装しています。) 以前のCommerce UPS XML API はすべて、Magento Open Source 2.4.7 コードベースから削除されました。
-
FedEx のMagento Open Source integration は、従来の FedEx WSDL Web サービスから最新の FedEx RESTful API に移行されました。 FedEx Web Services Tracking、Address Validation、および Validate Postal Codes WSDLS は、2024 年 5 月に廃止されます。
-
新しい USPS Ground Advantage 出荷方法のサポートを追加しました。 これは、2023 年 7 月にリリースされた USPS の新しい配送方法 USPS Ground Advantage との標準の統合です。 この新しい統合は、USPS 配送サービスを通じて配送料を取得し、配送と返品をスケジュールするために使用できます。 USPS Ground Advantage の配送方法は、これらの配送方法に代わるものです。これらの配送方法は、USPS Ground Advantage の配送方法がリリースされたときに廃止されました。
- USPS 小売基盤
- ファーストクラスのパッケージサービス
- 区画の地盤 を選択
-
Temando 出荷モジュールは、コア Magento Open Source コードベースから削除されました。 この機能はMagento Open Source 2.4.4 で廃止されました。
パフォーマンスと拡張性の強化
Magento Open Source 2.4.7 では、Magento Open Sourceのパフォーマンスと拡張性が次のように強化されました。
-
インデクサー管理の強化。 新しい
indexer:set-statusコマンドは、インデクサーのステータスの動的管理をサポートしています。 管理者ユーザーは、このコマンドを使用してインデクサーのステータスをsuspended、invalid、validに変更できます。 この機能は、製品の読み込みや更新など、大規模な一括操作中に、システムの cron ジョブによってインデクサーが自動的にトリガーされるタイミングを制御できるので、システムのパフォーマンスを管理する場合に特に便利です。 インデクサーの管理 を参照してください。 -
オプションが多数ある複雑な製品の製品一覧ページ 100 を超えるオプションを持つ複雑な製品を含む製品リストページの読み込み時間が改善されました。 また、GraphQLの商品のカテゴリー別リスト掲載依頼のパフォーマンスも向上しました。
-
販売ルールのパフォーマンスの向上。 多数(約 100,000 件)のアクティブなセールス・ルールにより、エンタープライズ・デプロイメントのパフォーマンスが向上しました。 プロモーションを大規模に実装する企業のデプロイメントでは、多くの場合、アクティブな買い物かごルールがデプロイされます。 Magento Open Source 2.4.7 を実行するこれらのタイプのエンタープライズデプロイメントでは、チェックアウト操作中の設定済み買い物かご価格ルール数に関連するパフォーマンス低下は表示されません。
-
多数のストアを含むデプロイメントのストアレベル設定の保存操作を高速化。 ストアが 500 を超えるデプロイメントで構成設定を保存するには、時間がかかる場合があります。 新しい Async Config モジュールは、コンシューマーを使用してメッセージキュー内の保存操作を処理する cron ジョブを実行することで、非同期設定の保存操作を有効にします。 AsyncConfig はデフォルトで無効になっています。
-
大規模な設定の設定キャッシュの生成が迅速化。 設定キャッシュが有効な場合、
bin/magento cache:clean configコマンドは設定キャッシュを事前警告するようになりました。 これにより、大規模な設定の設定キャッシュを生成するために必要なダウンタイムが削減されます。 設定の保存操作では、データをキャッシュに書き込む前にconfig_scopesキャッシュをクリーンアップしなくなりました。これにより、設定データの書き込み中に他のリクエストがロックアウトされる時間も短縮されます。
Braintree
-
Vaulted PayPalおよび Pay Later の変更 - ログイン中で、PayPal アカウントを保管/保管したことがあるユーザーは、次の方法で支払いを行うことができます。
- Pay Now (PayPal アカウントにログインしなくても、ユーザーはデフォルトのカードで支払うことができます)
- 別の資金源で支払う
- 別の口座で支払う
- PayPal Pay Later または PayPal Credit ボタン
-
3DS によるGoogle Pay のサポート:Google Pay の非トークン化カードに 3DS 検証のサポートが含まれています。 詳しくは、Braintree ドキュメント を参照してください。
-
Vault Apple Pay Payments - ログイン中のお客様が、今後のトランザクションで使用するために、Apple Pay 支払をCommerce ストアアカウントに保管または保存できるようにします。 これにより、チェックアウト時の手順の数が減り、再訪問者のチェックアウトエクスペリエンスが向上します。
-
Vault Google Pay Payments - ログイン中のお客様が、今後のトランザクションで使用するために、Google Pay 支払をCommerce ストアアカウントに保管または保存できるようにします。 これにより、チェックアウト時の手順の数が減り、再訪問者のチェックアウトエクスペリエンスが向上します。
-
Vault Venmo Payments - ログインしているユーザーが、今後のトランザクションで使用するために、Venmo アカウントをCommerce ストアアカウントにコンテナ化または保存できます。 これにより、チェックアウト時の手順の数が減り、再訪問者のチェックアウトエクスペリエンスが向上します。
-
Vault ACH Payments - ログイン済みのお客様が、今後のトランザクションで使用するために、ACH 支払いをCommerce ストアアカウントに保管または保存できるようにします。 これにより、チェックアウト時の手順の数が減り、再訪問者のチェックアウトエクスペリエンスが向上します。
-
チェックアウトの上部にある Express Paymentボタン - チェックアウトをより迅速に行えるよう、チェックアウトの開始時に Express Payment のオプションを導入しました。 顧客は、PayPal、PayPal Pay Later、Apple Pay、Google Pay Express の支払いで支払うことができるようになりました。
-
管理設定内の Braintreeのリリースノートおよびサポートリンク - マーチャントは、Commerce管理者からBraintreeのサポートおよびリリースノートにオンラインで直接リンクできるようになりました。
-
Braintree を除くすべてのVenmo 支払い方法でGraphQLをサポート – 追加の設定がGraphQL API で公開されます。 これは、特にヘッドレスアプリケーションで役立ちます。
-
アカウント領域内の Vaulting支払い - ログインした顧客は、新しいクレジット・カード/デビット・カードと のアカウントをアカウント領域に vault/storePayPal できるようになりました。 以前は、お客様は、チェックアウト時にトランザクションを完了する際に後で使用するために支払いを保存する際にのみ Vault/Store を使用できましたが、新しいトランザクションを作成する必要なく、新しいクレジット/デビットカードおよび PayPal アカウントを Vault できるようになりました。
-
摩擦なし取引 – 摩擦なし取引は、オンラインのクレジット/デビット・カード取引を完了するための顧客のクリック/ステップ数を減らすことで、支払いプロセスを高速化します。 以前は(3DS が有効になっている場合)、すべてのお客様に 3DS の課題がありました。 新しい摩擦なし取引機能により、顧客は銀行が要求した 3DS に対してのみ課題を抱えています。 これにより、買い物かごの放棄が減り、コンバージョン率が向上し、売上が増加します。
-
紛争 Web フック - Braintreeで顧客がトランザクションに対して紛争を起こした場合、紛争ステータスがCommerceに渡されるようになりました。 Sales/Order グリッドで検索でき、各注文に添付されます。
GraphQL
Magento Open Source 2.4.7 では、GraphQLのキャッシュ機能の強化、カスタム属性に対するGraphQL スキーマのサポート、ヘッドレス注文キャンセルのサポート、リゾルバーキャッシュの改善が行われました。
-
より柔軟な買い物かご管理。
clearCartのミューテーションにより、指定した買い物かごの内容が 1 回のアクションでクリアされるようになりました。 これは、非推奨(廃止予定)となったclearCustomerCartのミューテーションに代わるものです。 -
買い物かごの突然変異を作成する際の改善。 非推奨(廃止予定)の
createGuestCartールミューテーションに代わって、createEmptyCartのミューテーションが追加されました。 以前は、createEmptyCartを使用した場合、買い物かごがゲスト向けかログイン中の顧客向けかを判断できませんでした。 -
注文項目に製品画像が含まれるようになりました。
OrderItemInterfaceは商品画像を公開します。これにより、画像を注文された商品に関連付けて、より効率的に読み込むことができます。 GitHub-32369 -
リゾルバーキャッシュのサポートの拡張。 次のGraphQL クエリリゾルバーが、GraphQL リゾルバーの結果キャッシュでキャッシュできるようになり、POST リクエストでクエリが送信される際のパフォーマンスが向上しました。
Magento\CustomerGraphQl\Model\Resolver\Customer::resolveMagento\CustomerGraphQl\Model\Resolver\CustomerAddress::resolveMagento\CustomerGraphQl\Model\Resolver\IsSubscribed::resolveMagento\CatalogGraphQl\Model\Resolver\Product\MediaGallery::resolve
-
注文キャンセルのサポート。 cancelOrder ミューテーションを使用すると、顧客は注文をキャンセルし、その識別子とキャンセル理由を渡すことができます。
order_cancellation_enabledの新しい「order_cancellation_reasons.description」フィールドと「storeConfig」応答フィールド
クエリは、ユーザーが開始した注文キャンセルリクエストをサポートします。 ストアの注文キャンセル設定のクエリ を参照してください。
-
カスタム属性のサポートの強化。 GraphQL カスタム属性のサポートが強化され、API データが強化されて、すべての属性タイプをサポートするようになりました。 GraphQL EAV 属性スキーマでは、管理での顧客属性および顧客アドレスオブジェクトの拡張と、GraphQLを使用した顧客属性および顧客アドレスオブジェクトの取得がサポートされるようになりました。 具体的な機能強化の領域は次のとおりです。
- 顧客や顧客住所などの特定の領域に対するカスタム属性のサポートの拡張または追加
- カスタム属性のキャッシュを追加しました
- 製品の既存のカスタム属性のサポートの強化
-
GraphQLのキャッシュ機能が強化され、ページの読み込み速度が向上しました。 これらのクエリにキャッシュ機能が追加され、ほとんどのPWA ページのページ読み込み時間の速度が向上しました。
-
GraphQL パーサーのパフォーマンスの向上。 GraphQL パーサーのパフォーマンスが向上したのは、リクエストごとに parse メソッドが呼び出される回数を減らしたためです。 現在は 1 回呼び出されています。 以前は、パーサーは少なくとも 3 回呼び出されていました。
既存のミューテーションの新しいフィールド
-
quickorder_activeフィールドを storeConfig および availableStores クエリに追加しました。 このフィールドは、クイックオーダー機能が有効かどうかを示します。 -
setBillingAddressOnCartとsetShippingAddressesOnCartのミューテーションに次のフィールドを追加しました。faxmiddlenameprefixsuffix
新しいクエリとミューテーション
attributeFormsクエリattributesListクエリguestOrderクエリguestOrderByTokenクエリrecaptchaFormConfigクエリ- 変
cancelOrder customAttributeMetadataV2クエリapplyCouponsToCart変異confirmEmail変異createGuestCart変異estimateShippingMethods変異estimateTotals変異removeCouponsFromCart変異
非推奨のクエリとミューテーション
- 変
clearCustomerCart - 変
createEmptyCart attributesMetadataクエリcustomAttributeMetadataクエリ
Inventory management
Inventory management(v1.2.7)には、商品インベントリを管理するツールが用意されています。 このコミュニティ開発機能は、Adobe CommerceおよびMagento Open Source コアコードにバンドルされています。
Magento Open Source Extension メタパッケージ
このリリースには、Magento Open Source Extension metapackage v1.0.0 が含まれています。このバージョンでは、このコアリリースと共に、Magento Open Source Extensions の一部が自動的にバンドルされています。 このメタパッケージに含まれているこの拡張機能のバージョンは、composer update の実行時にインストールされるので、最新のコアリリースにアップグレードする際に拡張機能をアップグレードするプロセスを簡略化できます。 この拡張機能では、独立したリリーススケジュールが維持されます。
Magento Open Source 2.4.7 のMagento Open Source Extension メタパッケージには、次の拡張機能が含まれています。
この拡張機能メタパッケージの今後のバージョンには、追加の拡張機能が含まれます。
PWA Studio
PWA Studio v14.0 は、Magento Open Source 2.4.7-beta1 と互換性があります。 アクセシビリティを向上させるための複数の機能強化が含まれています。 バグ修正について詳しくは、PWA Studio リリース を参照してください。 PWA Studioのバージョンと互換性のあるMagento Open Source コアバージョンのリストについては、 バージョンの互換性 を参照してください。
Web API フレームワーク
このリリースでは、REST API GET および POST V1/products/attributes エンドポイントによる制限の回避策を提供する 2 つの新しい REST エンドポイントが導入されています。 これらのエンドポイントは、is_filterable オプションの Filterable(with results) オプションと Filterable(no results) オプションの両方の Use in Layered Navigation 属性に同じ値を返します。 (is_filterable 属性プロパティの型は Boolean です。この型では、このプロパティを Filterable(no results) に設定することはできません)。
回避策として、次の 2 つの新しい REST エンドポイントが実装されました。
PUT /V1/products/attributes/{attributeCode}/is-filterable/{isFilterable}。 パスパラメーター:attributeCode(String)およびisFilterable(int値:0 は No、1 はFilterable (with results)、2 はFilterable (no results))。GET /V1/products/attributes/{attributeCode}/is-filterable。 パスパラメーター:attributeCode(String).
修正された問題
Magento Open Source 2.4.7 コアコードの何百もの問題を修正しました。 このリリースで修正された問題の一部を以下に示します。
インストール,アップグレード,デプロイメント
- 不要なキャッシュ操作がセットアッププロセスから削除されました。 以前は、Magento Open Sourceは、
bin/magento setup:db-data:upgradeまたはbin/magento setup:upgradeが実行されたときに不必要に設定をディスクに書き込んでいたので、セットアップ中に som モジュールで問題が発生していました。 GitHub-38124
- メモリ不足と大きなテーブルによるデプロイメントの問題が解決されました。 大きな MySQL テーブルに関連するメモリ超過エラーが原因で、
bin/magento setup:upgradeコマンドが失敗しなくなりました。
bin/magento setup:installが削除された後、app/etc/config.phpが正常に完了するようになりました。 以前は、見つからないファイルがインストール中に再生成されず、Magento Open Sourceがエラーをスローしていました。 GitHub-37805
bin/magento setup:upgradeは、テーブルと関連するmviewインデクサーの両方をインストールする新しいモジュールをインストールする際に正常に実行されるようにリファクタリングされました。 GitHub-37304
- 区切り文字エラーが原因でデータベースの復元が失敗しなくなりました。 以前は、Magento Open Sourceが
bin/magento setup:rollback --dbを実行すると、次のエラーがスローされていました:Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'delimiter' at line 1, query was: delimiter ;;。
bin/magento setup:upgradeコマンドは、このタイプの MySQL メモリ制限関連のエラーPHP Fatal error: Allowed memory size of 4294967296 bytes exhausted (tried to allocate 20480 bytes)で失敗しなくなりました。 複数選択属性の移行が最適化され、setup:upgrade行時のメモリ消費が削減されました。
- データベースのバックアップの生成が、管理とコマンドラインの両方から期待どおりに動作するようになりました。 以前は、Magento Open Sourceは次のエラーをスローしていました:
Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'delimiter' at line 1, query was: delimiter ;;。
setup:config:setパラメーターを指定せずに--lock-db-prefixを実行しても、現在の値はenv.phpファイルから消去されません。
- Varnish 設定が更新され、ゲストユーザーが他の顧客グループに関連するキャッシュされたコンテンツにアクセスできなくなりました。
- テーブルと関連する
bin/magento setup:upgradeインデクサーの両方をインストールする新しいモジュールをインストールすると、mviewが正常に完了するようになりました。
bin/magento setup:upgradeでは、メッセージキューのトピックにトピック名が含まれていない場合に、より詳細なエラーメッセージが表示されるようになりました。 GitHub-34246
- 結合さ
bin/magento setup:upgradeた XML ファイルが無効な場合に、より詳細なエラーメッセージが表示されるようになりました。 エラーメッセージにファイル名が含まれるようになりました。
管理 UI
- グラフは、ダッシュボードでデフォルトで正常に無効になりました。 GitHub-38430
- Admin Sales メニューにサブメニューが正しく表示されるようになりました。 以前は、列の区切りが正しく機能せず、一部のサブメニューが表示されていませんでした。 GitHub-37812
- グリッドで複数のページが選択されている場合、Select のドロップダウンメニューオプションが管理 Content/Pages に表示されるようになりました。 GitHub-35386
- 設定のデフォルト値
system/dashboard/enable_chartsへのパスを修正しました。 グラフが、期待どおりに管理者に表示されるようになりました。 GitHub-37668
- 管理カスタマーグリッドの表示の問題を修正しました。 以前は、グリッド列は、表示されるページ内に完全には含まれていませんでした。
- 管理者の静的グリッドの行に、期待どおりにホバーカラーが適用されるようになりました。 GitHub-35358
- 空白スペースを含まないギリシャの郵便番号を買い物客が入力した場合に、チェックアウトワークフローに警告が表示されなくなりました。 GitHub-36676
- Admin
It's time to change your passwordリンクが、期待どおりに Change Admin Password ページにリダイレクトされるようになりました。 GitHub-37902
- ページタイトルのサフィックスが、製品ページの
titleタグとmeta titleタグの両方に含まれるようになりました。 GitHub-37680
- 製品の在庫ステータス条件が、関連する製品ルールに正しく適用されるようになりました。
- モバイルデバイスで「Login as Customer」ボタンが正しく表示されるようになりました。
- ログインした管理者ユーザーが新しいカスタマーグループを追加する権限を持っていない場合、Adobe Commerceでは「Admin Add new customer group」ボタンが表示されなくなりました。
- 権限が制限された管理者ユーザーは、親製品が別の範囲に割り当てられている子製品を保存できるようになりました。 以前は、子商品が変更されたスコープに割り当てられていない親商品のキャッシュをCommerceが無効にしていました。
- 管理者ユーザーは、表示データが破損したり失われたりすることなく、管理フィルタービューを正常に切り替えることができるようになりました。 GitHub-37529
バンドル製品
customerCartクエリで、バンドル製品に適用されたすべての割引が期待どおりに返されるようになりました。 以前は、バンドル製品に適用された割引合計はゼロとして返されていました。
- 製品詳細ページに、100% の割引が適用されたバンドル製品の正しい価格が表示されるようになりました。 以前は、Magento Open Sourceは、バンドル商品価格に 100% 割引を適用していませんでした。
- 価格が動的なバンドル製品の場合、買い物かごの価格ルールが、各子製品ではなく製品バンドルに適用されるようになりました。
POST V1/shipmentエンドポイントを使用してバンドル製品を含む出荷を作成する際に発生するエラーを修正しました。 エンドポイントで項目が期待どおりに追加され、次のエラーが返されなくなりました。The shipment couldn't be saved
- 製品に
GET V1/shipment/しい出荷タイプが設定されている場合、together API ルートを使用して、バンドル製品での出荷を作成できるようになりました。 バンドル製品も、出荷タイプのプロパティに基づいて検証されるようになりました。
- 買い物客は、ストアフロントの買い物かごで、バンドル製品の数量を編集できるようになりました。 以前は、商品がストアフロントの買い物かごで編集され、エラーが表示された場合、Adobe Commerceで
ItemIdの null 値が処理されませんでした。 GitHub-37696
- スラッシュ(
/)文字を含む SKU を使用して、バンドル製品を管理者の注文に正常に追加できるようになりました。 以前は、管理者ユーザーはこの方法を使用して製品を管理注文に追加できず、Magento Open SourceがJavaScript エラーをスローしていました。
- 管理者ユーザーは、対応するシンプルな製品で Qty Uses Decimal が有効になっている場合、新しく追加されたバンドルオプションの小数のデフォルト値を設定できるようになりました。 以前は、保存した選択内容に対してのみ小数値を設定できました。
- 多数のオプションを持つバンドル製品の保存に最適なパフォーマンス
- バンドル製品が、製品オプションで SKU を複製せずに正常に読み込まれるようになりました。 以前Magento Open Sourceは、重複するエントリを含むバンドル商品をインポートした際に、商品オプションで複数の重複 SKU を作成していました。
- バンドル内の製品の 1 つが在庫切れの場合、バンドル製品価格が正しく計算されるようになりました。 以前は、バンドルの一部であった製品が在庫切れだった場合、価格計算から削除されていました。
- バンドル製品は、必要な子製品の最後の製品が購入されたときに、在庫切れと表示されるようになりました。 以前は、バンドル製品は、単純な製品が在庫切れの場合にストアフロントに在庫中として表示されていました。
addBundleProductsToCartミューテーションを使用して、必須でないオプションを含むバンドル製品を買い物かごに追加する際のパフォーマンスの問題が解決されました。
categoryList設定が有効な場合、Show out-of-stock products クエリは、すべてのバンドルオプションを期待どおりに返すようになりました。 以前は、在庫切れのオプションはクエリ応答に含まれていませんでした。
- カタログの価格範囲が
POST V1/productsに設定されている場合、websiteで作成されたバンドル製品が成功するようになりました。 以前は、整合性制約違反が発生していました。 GitHub-35595
キャッシュ
- キャッシュが Fastly CDN (Caching Application=Fastly CDN)に設定されているストアで、買い物客にカテゴリが表示されるようになりました。 これは、ゲストの買い物客と登録済み顧客の両方に影響を与えました。
- ログイン後のキャッシュ cookie が、web サイトを閲覧した後も同じになりました。 以前は、ログインコントローラーが誤ったキャッシュ cookie を送信したので、ページが複数回キャッシュされた可能性がありました。
- CMS ブロックを含むCMS ページに対するGraphQL GET操作からの応答が、Fastly キャッシュで期待どおりにクリアされるようになりました。 その後のスケジュールの更新で、これらのページの正確な更新コンテンツが表示されるようになりました。
- 親製品の子製品の 1 つが管理者から保存されると、ページキャッシュが期待どおりにクリアされるようになりました。 インデクサーの状態(スケジュール済みまたはリアルタイム)に関係なく、他の製品タイプと同様に、設定可能なバリアントのキャッシュ無効化に到達するためのプラグインチェックが導入されました。 以前は、設定可能なバリエーションが管理者から更新された後、ストアフロントの価格が正しく更新されていませんでした。
- AWS資格情報のキャッシュメカニズムを追加しました。 認証情報プロバイダーは、Commerce キャッシュを使用して、AWSから取得した認証情報を EC2 設定用にキャッシュするようになりました。
- 設定可能な商品に関連付けられた単純な商品を保存する際に、設定可能なキャッシュタグを追加することを目的とするプラグインが、期待どおりに動作するようになりました。
POST V1/productsによって単純な製品が更新された場合、関連する設定可能なすべてのキャッシュタグが、期待どおりに削除されます。 以前は、すべての価格がストアフロントで更新されているわけではなく、キャッシュを手動でクリアする必要がありました。 GitHub-36726
買い物かごとチェックアウト
- Magento Open Sourceでは、永続カートが有効な場合、製品詳細ページ(PDP)やCMS ページなどのフルページキャッシュ可能なページを生成する際に、ユーザー固有の引用データを読み込まないことで、パフォーマンスを最適化するようになりました。 以前は、これらのページの生成中に、システムはユーザー固有のセッションと引用符データを不必要に読み込んでいたため、パフォーマンスに影響が及んでいました。
- カスタムアドレスのカスタム属性が、データベースで期待どおりに保存されるようになりました。 以前は、データベースに保存された属性値の前に属性コードが追加されていました。
- 買い物かごルールの生成と製品属性のフィルターテキストが改善されました。 個々の製品が複数回ロードされることはなくなりました。
- チェックアウト中にエラーが発生した場合にMagento Open Sourceに情報エラーメッセージが表示され、買い物客が以前のチェックアウト手順に戻ることがなくなりました。 以前は、買い物客は配送ページに戻されていました。
cartクエリは、仮想カートの発送方法と住所を返さなくなりました。 以前は、買い物かごに物理製品と仮想製品の両方が含まれ、すべての物理製品が削除された場合、買い物かごへのクエリ応答には引き続き発送情報が含まれていました。
- 買い物かごへの追加アクションがトリガーされた場合に、Magento Open Sourceに情報メッセージが表示されるようになりました。 以前は、
The requested qty is not availableは必要に応じてストアフロントに表示されていませんでした。
- 大きなアドレス帳を持つお客様のチェックアウトページの読み込み時間が改善されました。 Magento Open Sourceは、Customer Addresses Limit 設定で指定された数のお客様のアドレスのみを処理するようになりました。 以前は、Magento Open Sourceはアドレス帳全体を読み込んでいました。
- 1 つの商品が在庫切れになった場合に、在庫中の商品の期待どおりに買い物かごで製品数量を変更できるようになりました。 以前は、買い物客は、在庫切れの商品の製品数量を変更できませんでした。
AdvancedSalesRule製品属性フィルターが、decimal 属性バックエンドタイプで正しく機能するようになりました。 その結果、Coupon Typeを No Coupon に設定した買い物かごルールが期待どおりに機能するようになりました。
- バンドルと設定可能な製品の両方を含む買い物かごに、期待どおりに買い物かご全体の割引が適用されるようになりました。
- 顧客区分の Cookie が Cookie のドメイン設定に従うようになりました。 以前は、セッションが共有されていても、サブドメインを含むストアでミニ買い物かごが期待どおりに更新されていませんでした。
- 複数のアドレスに注文を送信した場合に、リージョン ID の処理中にエラーがトリガーされなくなりました。
- 買い物かごレベルで適用される固定割引金額が正しくなりました。GitHub-37496
- 発送方法を条件として設定された買い物かご価格ルールを適用する定額発送方法を選択した後、買い物客がクーポンを適用すると、クーポンが注文に正常に適用されるようになりました。 以前は、クーポンが無効というエラーが表示され、クーポンが適用されていませんでした。 GitHub-34866
- 発送方法を条件として設定された買い物かご価格ルールを適用する定額発送方法を選択した後、買い物客がクーポンを適用すると、クーポンが注文に正常に適用されるようになりました。 以前は、クーポンが無効というエラーが表示され、クーポンが適用されていませんでした。 GitHub-34866
- 買い物客がChrome オートコンプリートを使用して配送先住所を入力した後、配送方法ブロックが再読み込みされる前に My billing and shipping address are the same 次へ をクリックした場合、 のチェックボックスがデフォルトでオンのままになりました。 GitHub-33725
applied_rule_idsテーブルのquote_item値に、適用されたルール ID の正しいリストが含まれるようになりました。 以前は、この値には最後に適用されたルール ID のみが含まれていました。
- セッションがサーバーから削除されると、ローカルストレージ内のミニ買い物かごと顧客データがリセットされるようになりました。 以前は、セッションファイルが削除されたときにこのデータが表示されていました。
- 永続カートが有効な場合、個別のカートが管理者から誤って結合されなくなりました。
- 買い物かごの税金と配送見積もりに、デフォルトの宛先設定が正確に反映されるようになりました。 以前は、デフォルトの税金宛先計算設定を設定し、州/地域と郵便番号を指定した場合、Estimate Tax and Shipping の下の買い物かごに ZIP 値のみが表示されていました。 これは、Magento Open Sourceが管理者からデフォルトのリージョン ID を設定する条件文を呼び出す前に、リージョン ID を undefined に設定したことが原因です。
- 永続買い物かごが有効になっている場合、Magento Open Sourceがチェックアウト中にこのエラーをスローしなくなりました:
Invalid state change requested。 以前は、このエラーがスローされると、同じquote_idを持つ複数の注文が作成されることがありました。
- ミニ買い物かごには、買い物かごの税金設定を反映したバンドルの製品価格が表示されるようになりました。 以前は、ミニカートには常にバンドル製品の価格に税金が含まれていました。
- 買い物かごページから提供される配送料の見積もりが正確になりました。
collectShippingRatesは 1 回だけ設定されるようになりました。 以前は、輸送見積もりは複製されていました。 GitHub-36648
- 指定した買い物かご内の商品が在庫切れである場合、
cartクエリがエラーを返さなくなりました。 以前は、このクエリを使用して購入を行う買い物客は、商品が在庫切れで、チェックアウトページが空白の場合、購入を完了できませんでした。
- モバイル環境でログイン中にページ
POST V1/guest-carts/<cartId>/shipping-informationリロードされた場合、へのゲスト API リクエストがcancelステータスを返さなくなりました。 以前は、Magento Open Sourceが 500 エラーをスローし、次の例外をログに記録していました。TypeError: Argument 2 passed to Magento\CustomerCustomAttributes\Model\Plugin\ProcessCustomerShippingAddressCustomAttributes::beforeSaveAddressInformation() must be of the type string, null given
- 買い物かごルールの Subtotal (Excl. Tax) 条件が適用される際に、送料無料の実施要件が期待どおりに計算されるようになりました。 GitHub-36760
cartクエリで、製品に対する正しい階層の価格が返されるようになりました。 GitHub-29655
- 配送ページでのクーポンの適用が選択した配送方法と競合する場合に、買い物客をガイドする情報エラーメッセージがチェックアウトページに追加されました。 以前は、買い物客に対して、前のページに戻るようにメッセージが表示されていました。
- 認証ポップアップは、ゲストのチェックアウトが有効な場合ではなく、必要な場合にのみ初期化されるようになりました。 ゲストの買い物客がチェックアウトに進もうとし、ゲストのチェックアウトが無効になると、トークンが初期化されるようになりました。 GitHub-30672
買い物かご価格ルール
- 買い物かご価格ルールの製品サブセレクト条件に、
total (incl.tax)オプションが期待どおりに含まれるようになりました。 GitHub-34871
If an item is FOUND/NOT FOUND in the cart with ALL/ANY of these conditions trueカタログ価格ルール条件が、カテゴリ属性と SKU 属性で正しく機能するようになりました。 以前は、この条件が買い物かご価格クーポンロジックに正しく適用されず、無効なクーポンが注文に適用されていました。 GitHub-37660
Magento_OfflineShipping拡張機能を無効にした新しい買い物かご価格ルールを正常に保存できるようになりました。 以前は、Magento Open Sourceは次のエラーをスローしていました:report.ERROR: Warning: Undefined array key "simple_free_shipping"。 GitHub-37580
- ある配送方法に関連する買い物かご価格ルールが店舗に対して設定され、チェックアウト中にこの配送方法が別の配送方法に変更された場合、買い物かご価格ルールが期待どおりに適用されるようになりました。 以前は、
applied_rule_idsテーブルでsales_order_item値が変更されることはなく、買い物かごの価格ルールが注文に適用されていませんでした。
- 発送方法を条件として設定された買い物かご価格ルールを適用する定額発送方法を選択した後、買い物客がクーポンを適用すると、クーポンが注文に正常に適用されるようになりました。 以前は、買い物かごページに
Coupon is Not validエラーが表示され、クーポンが適用されていませんでした。 GitHub-34866
カタログ
bin/magento cache:cleanまたはbin/magento cache:flushを実行しても、指定がない限り、ビルトインまたは Varnish フルページキャッシュ全体がフラッシュされなくなりました。 GitHub-38301
- マーチャントは、
catalog_product_price dimensions-modeがwebsiteに設定されている場合、製品カルーセルを使用してCMS ブロックを作成できるようになりました。 以前は、Magento Open Sourceはブロックを保存せず、次の SLQ エラーをスローしていました:report.CRITICAL: PDOException: SQLSTATE[42S02]: Base table or view not found: 1146 Table。
- 商品の詳細ページで商品の色が変更された場合に、Magento Open Sourceに重複した画像が表示されなくなりました。 GitHub-36243
- 大規模なマルチストア環境で新しいストアを追加した後や既存のストアを変更した後に web サイト固有の値を同期するためのアルゴリズムを最適化しました。
- キャッシュされた画像ファイルのクリーンアッププロセスが改善され、
pub/media/catalog/productフォルダーに隠しディレクトリが作成されなくなりました。 以前は、隠しディレクトリは、クリーンアップ操作中にディスク領域の問題を引き起こしていました。 操作を終了できます。これにより、削除されなかった一時的な非表示ディレクトリが残ります。
- バンドル製品の価格が正しく計算されるようになり、価格計算時の操作の順序に関する問題が解決されました。 GitHub-35665
catalog_product_priceのインデックスクエリから不要な句が削除され、大きなカタログを持つストアでのこのインデクサーのパフォーマンスが向上しました。 GitHub-32382
- Magento Open Sourceでは、このフィールドを空のままにすると、製品詳細ページの Meta Description フィールドに製品説明テキストが挿入されなくなりました。 以前は、商品の説明にページビルダーまたは別のHTML エディターによって生成されたHTML コードが含まれている場合、HTMLが「Meta Description」フィールドに表示され、このフィールドを空のままにすることができませんでした。
- 設定可能な製品 PDP ページの設定可能な製品オプションが、ページ上の他の設定可能な製品オプションの影響を受けなくなりました。 以前は、ドロップダウン属性を持つ設定可能な商品は、商品の詳細ページに商品カルーセルが存在する場合に例外がトリガーされなくなりました。 スウォッチオプションを持つ設定可能な製品がページに他にある場合、設定可能な製品オプションを選択できませんでした。
- 最近閲覧した商品情報が、ストア表示の設定に従って表示されるようになりました。 以前は、最近表示された製品データは、名前や優先言語など、ストア表示ごとに更新されていませんでした。
- Chromium ベースの web ブラウザーのモバイル表示の製品ページで、Vimeo ビデオが期待どおりに再生されるようになりました。
bin/magento catalog:images:resizeコマンドで、カスタムテーマを持つカスタム web サイトに割り当てられた製品の製品画像を正しく生成できるようになりました。
- 値が
NULLまたはNOT NULLのメタデータは、「デフォルト値を使用 チェックボックスに従って、期待どおりにデフォルトストアに保存されるよ になりました。 以前は、このチェックボックスをオフにした場合、NULLの値を持つメタデータは保存されませんでした。
- マーチャントは、製品の詳細ページから既存の画像を正常に削除して、同じ名前の新しい画像をアップロードできるようになりました。 これまでは、このような状況では、ストアフロントの製品ページに正しい画像が表示されていませんでした。
- 製品画像
productDetail属性が空に設定されている場合、altクエリが null ではなく製品名を返すようになりました。
- ダウンロード可能な製品と物理的な製品の両方を含む注文には、注文が完了するとすぐに、ダウンロード可能な製品への作業リンクが含まれるようになりました。 以前は、ダウンロード可能な製品へのリンクは、同じ注文で物理的な製品が出荷されるまで利用できませんでした。
- カテゴリをストア/ルートカテゴリから別のストア/ルートカテゴリに移動した場合に、URL の書き換えが更新されるようになりました。 サブカテゴリが新しい親カテゴリに転送されるときに、古いデータベース エントリが削除されるようになりました。 データベースには、関連するエントリのみが含まれるようになりました。 以前は、
url_pathは適切なストア ID で更新されていませんでした。
- REST
V1/products/<sku>/mediaエンドポイントで、複数のメディア画像の同時アップロードを処理できるようになりました。 以前は、複数のリクエストを同時に処理している際に、一貫性のないデータが作成され、このデータがデータベースに保存されるとMagento Open Sourceがエラーをスローしていました。
- カテゴリ製品および製品カテゴリインデクサーの部分的な再インデックス性能が改善されました。 以前は、
indexer_update_all_viewscron ジョブは、1 つの製品またはカテゴリごとに複数回リインデクサーを実行していました。
- 在庫設定(数量)に基づいて商品の在庫ステータスが在庫切れに自動的に更新された場合、その後、在庫数量が更新されると、在庫ステータスが在庫切れに更新されます。 以前は、製品の在庫設定が在庫中に更新された場合、
stock_status_changed_auto設定は無視されていました。
- Remember Category Pagination 設定が有効な場合、検索ページでツールバーの並べ替えが期待どおりに機能するようになりました。 GitHub-33220
- ストアビュー範囲のチェックボックスが選択されている場合、複数選択 Use Default Value 属性が期待どおりに保存されるようになりました。 以前は、製品を編集してデフォルト値を保存する際に、このチェックボックスをオフにしていました。
- Web サイトに対する制限アクセスを持つ管理者ユーザーは、自身の権限適用範囲内の製品に画像を追加できるようになりました。 管理者ユーザーがその製品へのアクセス権を持っていない場合は、Magento Open Sourceに情報メッセージが表示されます。 以前は、web サイトへのアクセスが制限された管理者ユーザーは、アクセス権のある製品に画像を追加できませんでした。
- 商品名がストアによって異なるマルチストアデプロイメントの管理/Category/Products in category で商品を名前で並べ替えた後、Magento Open Sourceに正しい名前が表示されるようになりました。 GitHub-36208
addProductsToCartミューテーションは、データを含むカスタマイズ可能なオプションを返すようになりました。 以前は、カスタマイズ可能な空のオプションのみが返されていました。 GitHub-37599
- 商品のバックオーダー状態がストアフロントに正しく表示されるようになりました。 以前は、出荷可能な製品が誤ってバックオーダーと識別されていました。
manage_stock値がuse_config_manage_stockの場合、書き出された製品の1値が正しくなるようになりました。 以前は、このデフォルト値は正しくありませんでした。
- 管理者ユーザーが製品の作成時に使用する表示から別のストア表示に変更した場合に、管理者からダウンロード可能な製品にアクセスしても、エラーが発生しなくなりました。 管理者ユーザーがストア表示をすべてのストア表示からデフォルトのストア表示に切り替えた場合、製品価格が float に正常に変換されるようになりました。 以前は、Magento Open Sourceがエラーをスローしていました。 GitHub-37519
- カスタムオプションを使用して作成した商品の画像を削除した後に保存した場合に、Magento Open Sourceで警告メッセージが表示されなくなりました。
- 製品のサムネール画像が、製品が再入荷したときに送信される製品ストックアラートメールに、期待どおりに表示されるようになりました。 以前は、この画像はアラートメールに表示されていませんでした
- カテゴリツリー(管理者 Catalog/Category)の製品数が正確になりました。 以前は、
catalog_category_product_indexテーブルからカテゴリ製品数を取得できませんでした。 このバグを引き起こしたタイプミスを修正しました。 GitHub-35417
- テーマ
product_image_white_bordersージのview.xmlークフローが無効になっている場合、ページ読み込み中に製品詳細ページのメインの製品画像が下に移動しなくなりました。 以前は、Fotorama JS の高さ設定が正しくないことが原因で、ページの読み込み中に製品画像が下に目に見えてシフトしていました。
- 顧客が価格低下アラートを購読すると、製品価格の低下が通知されるようになりました。 以前は、アプリケーションレベルのキャッシュのため、価格ドロップ通知は必ずしも送信されませんでした。
- Web API を使用して製品属性を作成するプロセスに、サーバーサイド検証が追加されました。 Use in Layered Navigation Catalog フィールドの値が Catalog Input Type for Store Owner、
Text Field、Text Area、Text EditorまたはDateの場合、Date and Timeフィールドを有効にすることはできません。 以前は、カテゴリや検索結果から製品が省略されていました。
- 買い物客がページを開き、ページネーションを変更し、製品ページに移動した後、カテゴリページに戻ると、カテゴリページが正しいページネーションで再読み込みされるようになりました。 GitHub-36563
- 設定可能な製品のオプションである在庫切れのシンプルな製品は、「はい Display Out of Stock Products に設定されている場合、ストアフロントに無効と て表示されるようにな ました。 以前は、ステータスや実際の可用性にかかわらず、すべてのオプションが使用可能として表示されていました。
- 特定のストア表示で web サイト範囲属性を更新しても、グローバルスコープのその属性の値が上書きされなくなりました。 以前は、同じ SKU と
store_view_codeで複数の行が使用可能な場合に製品価格をインポートすると、デフォルトおよび「すべてのストア」表示範囲の価格が不正確になっていました。
- マーチャントは、管理者からGIF画像を製品の画像ギャラリーに追加できるようになりました。 以前は、Magento Open Sourceには「
imagecolorsforindex(): Argument #2 ($color) is out of range」というエラーが表示されていました。
- 未定義の配列キーによるエラーを処理するためのチェックが追加されました。 以前は、宣言型スキーマの許可リストの生成中にエラーが発生していました。
- Magento Open Sourceが、カスタムの日付
01/01/1970に対して有効な結果を返すようになりました。 以前は、カスタム属性は次のエラーを返していました:Invalid input datetime format of value '1/01/1970。 GitHub-37274
- フラグメントを使用する
routesクエリが、期待どおりにカテゴリ情報を返すようになりました。 以前は、カテゴリページで内部サーバーエラーが発生していました。 GitHub-35906
cataloginventory_stockの部分的なインデックス再作成プロセスの問題が解決され、インデクサーのパフォーマンスが向上しました。 以前は、在庫カテゴリと製品カテゴリは正確に更新されていませんでした。
- Magento Open Sourceは、商品が属するカテゴリが新しい親に移動された場合、その商品に対して 301 リダイレクトを生成するようになりました。 GitHub-37039
カタログルール
- スケジュールの更新で有効にすると、カタログルールのインデックスが正しく作成されるようになりました。 その結果、割引価格が正しく生成され、インデックスが作成されるようになりました。 以前は、2 つのカタログルールが使用可能で、最初のルールのカタログルールのインデックス作成操作が完了する前に、最初のルールの後に 1 つのルールがアクティブ化された場合、2 番目のカタログルールに対してカタログルール割引価格が生成されませんでした。
- カタログルールが、複数の web サイト環境で期待どおりに適用されるようになりました。
設定可能な製品
- マーチャントは、設定可能な製品を設定する際に、関連付けられている単純な製品のソースに影響を与えることなく、Skip quantity at this time と Skip image uploading at this を選択できるようになりました。 以前は、Skip quantity at this time を選択すると製品ソースが消えていました。
- すべてのオプションが同じ価格の場合、設定可能な製品価格の As low as ラベルは表示されなくなりました。
- Web サイト権限を持つ管理者ユーザーは、設定可能な製品の一部である子製品を、別のストアコンテキストで保存できるようになりました。 インデックス再作成プロセスでは、このタイプの設定可能な製品をスキップするようになりました。
- スケジュールされた更新によって 1 つの子製品が無効になっている場合、2 つの子製品を持つ設定可能な製品が、在庫切れとしてマークされなくなりました。 これは、2.4.7-beta1 の既知の問題でした。
- 複数のオプションを持つ設定可能な製品の保存操作のパフォーマンスが向上しました。 以前は、製品の保存操作中にタイムアウトが発生する可能性がありました。 GitHub-36928
- 買い物客が製品オプションを選択すると、設定可能な製品価格のストアフロント表示が期待どおりに変更されるようになりました。 GitHub-37378
クーポン
- お客様ごとの使用回数が制限されているクーポンコードを、以前に使用された注文が失敗した場合に 2 回使用できるようになりました。 以前は、以前の注文がキャンセルされたときにプロモーションコードがリリースされていませんでした。
- スペース文字を含むクーポンコードが無効でなくなりました。 以前は、クーポンコードにスペース文字(実際のコードの前または後)が含まれていると、検証に失敗していました。 GitHub-38048
- 買い物客の単一使用クーポン値が、適用された注文がキャンセルされた際に、期待どおりに復元されるようになりました。
GET V1/coupons/<couponId>エンドポイントは、自動生成されたクーポンと同様に、手動で作成されたクーポンに対して期待される完全な応答を返すようになりました。 以前は、一部のフィールド(usage_limit、usage_per_customer、created_atなど)が省略されていました。
cron
aggregate_sales_report_bestsellers_datacron ジョブで非常に大きな一時 MySQL テーブルが作成されなくなり、正常に完了します。 この cron ジョブでは、すべてのストアではなく、ストアごとにデータを一度に挿入するようになりました。 以前は、この cron ジョブを実行するとNo space left on deviceエラーが発生する可能性がありました。
- Cron ジョブが不要な cron ジョブロックを取得しようとするのを防ぎ、
cron_scheduleテーブル内の保留中のレコード数を削減しました。 以前は、cron ジョブは、ジョブを実行するのに遅すぎる場合にロックを取得しようとしました。cron_scheduleの Cron ジョブは、スケジュールされた時間を既に過ぎていても、失敗としてマークされませんでした。 Magento Open Sourceは、このエラーをエラーログに繰り返し表示しました:report.WARNING: Could not acquire lock for cron job: indexer_update_all_views。
- Cron 式での 0 による除算の致命的なエラーを修正しました。 GitHub-37804
sales_clean_quotescron プロセスは、見積もりテーブルのstore_idとupdated_at columnsに複合インデックスを追加することで実行速度を向上させるように最適化されています。 この変更により、多くの引用符を処理する際の cron ジョブのパフォーマンスが向上します。
- 管理者ユーザーは、
bin/magento cron:runプロセスが現在実行しているタスクを表示できるようになりました。 現在実行中のプロセスのタイトルに、グループ名とジョブ名がリストされるようになりました。 GitHub-34321
顧客
- Magento Open Sourceでは、設定に基づいて、カスタマーを編集ページに「Date of Birth」、「Tax/VAT Number」、「Gender」、「Telephone」、「Company」および「Fax」フィールドを表示するようになりました。 GitHub-36196
電子メール
- 分音記号またはアクセント記号を含むメール(utf8 メール)が、顧客および会社と、ゲストおよび登録済みの顧客の注文配置でサポートされるようになりました。 以前は、Magento Open Sourceは分音記号を含む顧客レコードを保存せず、次のエラーを表示していました:
Something went wrong while saving the customer。
- メール送信者名にコロンを使用できなくなりました。 新しい検証ルールにより、Admin Stores > General の「メールアドレスを格納」セクションで、コロン文字を含む送信者名が保存されるのを防ぐようになりました。 以前は、マーチャントはコロン文字を含む送信者名を保存できたため、メールサーバーエラーが発生していました。
- 顧客のメールアドレスに分音記号を含めることができるようになりました。 以前は、フロントエンド検証により、メールアドレスに発音区別符号を持つユーザーの作成が禁止されていました。 GitHub-12075
- 在庫および価格のアラートメールが、web サイトのデフォルトストア表示に設定された言語に従って翻訳されるようになりました。 以前は、これらのメールは翻訳されていませんでした。
POST V1/order/notify-orders-are-ready-for-pickupは、注文の準備が整った場合にのみ、注文の受け取り準備が整ったことを顧客に警告するメールを送信するようになりました。 メールは、リクエストが例外なく実行された場合にのみトリガーされるようになりました。
フレームワーク
- Varnish を使用して HTTP ヘッダーを出力する際に
UNCACHEABLE値を追加することで、デバッグを改善しました。 以前は、HIT個またはMISS個の値のみが出力されていました。 GitHub-37912
- デフォルトの Varnish 圧縮処理をサポートするコードを追加しました。 GitHub-38309
varnish:vcl:generateコマンドにinput-file argumentが含まれるようになりました。 これにより、Commerce ルートを基準とした、Git リポジトリへのカスタム VCL の追加がサポートされます。 GitHub-37363
- Varnish 4.x と 5.x のサポートがコードベースから削除されました。 GitHub-38304
phpcodesniffer-composer-installerのcomposer.jsonは v1.0.0 にアップグレードされました。GitHub-36913
- RFC3986 に準拠していない文字は、コードベースから削除されました。 GitHub-38355
Magento\Reports\Block\Adminhtml\Shopcart\Product\Gridクラスで間違った PHP doc タグを修正しました。 GitHub-38186
- コーディング手法の際に作成されたコードベース全体でリファクタリングされたコードでは、
app/etc/env.phpファイルに含まれているすべてのキャッシュセクションにフロントエンドセクションが含まれることが規定されていました。 このリファクタリングは、Magento Open Source 2.4.4 より前のデプロイメントをアップグレードする際に発生する可能性のある問題に対処します。 GitHub-38363
- API 呼び出し中に値 0 の在庫 ID が指定された場合に、
StockItemValidator.phpに関連付けられるエラーメッセージを明確にしました。 GitHub-31107
- 依存関係の挿入コンパイル中にエラーが発生しないように、デフォルトの空の配列を
$tagGeneratorsにCompositeTagGenerator加しました。 以前は、bin/magento setup:upgradeモジュールとMagento_DirectoryGraphQlモジュールが無効になっている場合にMagento_StoreGraphQlコマンドを実行すると、エラーが発生していました。 GitHub-38165
- 未使用の
AlgorithmProviderFactoryクラスが削除されたほか、JweAlgorithmManagerFactory.php、JweContentAlgorithmManagerFactory.php、JwsAlgorithmManagerFactoryなどのクラスのこのクラスに対する依存関係も削除されました。 GitHub-37783
var/log/system.logファイルにmain.INFOのエラーメッセージが含まれなくなりました。 メニューエントリ ログがレベル INFO から DEBUG に移動されました。 以前は、var/log/system.logファイルには次のようなメッセージが殺到していました:Add of item with id Magento_Theme::design_config was processed …。
exec()が false を返した場合に、Redis プリロードが失敗しなくなりました。 プリロードプロセスに検証が追加され、array_combineが 2 番目の引数としてfalseを受け取らなくなりました。 その結果、がexec()を返した場合、プリロードfalse引き続き実行されます。 GitHub-37509
Magento_CatalogWidgetモジュールをリファクタリングして、$blockエスケープ関数を$escaperエスケープ関数に置き換えました。 GitHub-37107
Swazilandがコードベース全体でEswatiniに更新されました。 GitHub-37873
- 利用可能な通貨の一覧に新しいニカラグア通貨(NIO)を追加しました。
CatalogRule/Controller/Adminhtml/Promo/Catalog/NewConditionHtml.phpの変数名を修正しました。 GitHub-38093
- 小数点数量が有効になっている製品のトランザクションで発生した小数丸めエラーを解決しました。 GitHub-37817
- 管理者カスタマーグリッドの日付フィルターが、指定されたロケールに従って期待どおりに機能するようになりました。
bin/magento setup:upgradeコマンドは、$schemaPatch変数データタイプが原因で失敗しなくなりました。 以前は、文字列値がget_class関数に渡されたため、エラーが発生していました。 GitHub-37545
- consumer に
max_messages = 0を設定したトランザクション中に接続がタイムアウトした場合、MySQL データベースへの接続が復元されるようになりました。 以前は、接続は終了していました。
magento/module-release-notificationコアモジュールは、2.4-develop コードで、次のコメントを付けて非推奨(廃止予定)としてマークされました。Starting from Magento 2.4.7, Magento_ReleaseNotification module is deprecated in favor of another in-product messaging mechanism
- プロキシコードの生成で、実稼動モードで実行されるデプロイメントのプロキシファイルとファクトリファイルが期待どおりに生成されるようになりました。 GitHub-35252
- インドのラダック州が「Admin address State」のドロップダウンメニューにオプションとして表示されるようになりました。 GitHub-33698
- イベントカウントダウンティッカーがカテゴリページで期待どおりに表示されるようになりました。
- 禁止された
@authorタグはコードベースから削除されました。これには、Magento_user-variable-wee、Magento_Catalog、Magento_Customer、Magento_Wishlist、Magento_ReviewTaxなどのモジュールや、フレームワーク全体を通じたものが含まれます。 GitHub-37245, GitHub-37246, GitHub-37249, GitHub-37263
Userモジュールの JSON シリアライザーは、より正確な新しいシリアライザー(JsonHexTag)に置き換えられました。 以前は、通常のシリアライザーでシリアル化されたデータにエスケープされていない要素が含まれている場合、そのデータを使用しようとするとMagento Open Sourceがクラッシュすることがありました。 GitHub-31377
- 完全な再インデックス(
bin/magento indexer:reindex)の実行中に、パイプラインのエラーが破損しなくなりました。 プロセス マネージャーがプロセスをフォークする前に AMPQ 接続が閉じられました。
- キューメッセージバリデーターが、すべての配列要素のサブタイプを検証するようになりました。 以前は、Magento Open Sourceは例外をスローしました。
app/etc/env.phpのトピックごとのキュー接続の設定が正しく機能するようになりました。 以前は、カスタム交換で新しいメッセージキューが作成されると、製品アラートキューが正しく生成されませんでした。 トピックのキュー接続がカスタム交換でapp/etc/env.phpに構成されている場合、そのカスタム交換でトピックすべての新しいバインドが作成されました。 マーチャントは製品アラートを処理できませんでした。
- MariaDB サーバーをバージョン 10.5.1 以上にアップグレードする際に、
/* mariadb-5.3 */コメントでマークされたテンポラル形式がbin/magento setup:installード中にエラーを引き起こさなくなりました。
- AwsS3 ドライバーは、デフォルトのベースファイルストレージ実装の代わりに、期待どおりに動作するようになりました。 以前は、このドライバーがファイルの記憶域に対して構成されている場合、データが破損する可能性がありました。 GitHub-37844
bin/magento config:show変数を使用するsetおよび$_ENVコマンドで、キャメルケースまたは大文字を含む web サイトおよびストアコードの使用がサポートされるようになりました。
- CSS レイアウトをサポートするために Tailwind 3 で使用されるように、
!importantを含むクラスを追加しました。 GitHub-37568
jQueryファイルに追加されたtrim-input.jsの依存関係がありません。 GitHub-37683
- イベント固有の詳細は、
contextメソッドの 2 番目の属性(log)として渡されるようになりました。 GitHub-37879
- 縦横比の値がカタログ画像に追加され、不要なスクリプトが UI フレームワークから削除されました。 GitHub-37691
- 無効な XML 設定によってトリガーされるエラーメッセージを、より詳しく表示するように改訂しました。 GitHub-37788
- コードベース全体での動的プロパティの作成に関連する、リファクタリングされた非推奨コード。
- 製品データベースが非常に活発な大型店舗向けのインデクサーのパフォーマンスが向上しました。 インデクサーは、最新の製品情報に対して、複数回ではなく、各インデックスに対して 1 回インデックスを作成するようになりました。 以前は、製品が web サイトから消え、web サイト上の製品データが古い可能性がありました。 GitHub-30012
- スレーブデータベース接続
mview_state使用可能な場合、レコードのステータスが変更ログアクティビティに基づいて状態を正確に示すようになりました。 以前は、変更ログに新しいエントリがない場合でも、クラウドデプロイメントでこれらのレコードはwaitingしい状態のままでした。
- 非推奨の
precisionクラスとの機能の等価性を維持するために、通貨形式のZendCurrencyオプションのサポートを追加しました。
- cookie メッセージが監視可能な属性に変換され、開発者がステートを操作して、UI の変更をトリガーできる可能性が生まれました。 以前は、cookie は読み取り専用であり、操作できませんでした。 GitHub-37308
- 管理者ユーザーは、Magento Open Source インスタンスが S3 ストレージに接続されている場合、請求書を生成できるようになりました。 以前は、Magento Open Sourceには「
Cannot create image resource. File not found」というエラーが表示されていました。 GitHub-35706
- VIES 検証サービスによる VAT 番号の検証が失敗した場合、Magento Open Sourceで例外メッセージが期待どおりにログに記録されるようになりました。 GitHub-36065
- 管理者ロールの作成時に管理者ロールを取得するために使用されるクエリから
Administrators名が削除されました。 GitHub-36998
bin/magento setup:config:setファイルに無効なデータベースユーザー名が含まれていても、app/etc/env.phpコマンドが失敗しなくなりました。 GitHub-37409
- デフォルトの管理 UI コンポーネントの予約語で列で並べ替えても、
var/log/exception.logで SQL エラーが発生しなくなりました。 GitHub-37423
- コスタリカに国家情報を提供するために
AddDataForCostaRica.phpを追加しました。 GitHub-37382。
- ユーザーが管理者から無効な URL にアクセスしようとする場合のエラーメッセージを改善しました。 GitHub-35682。
- 通貨記号の
Param $options[位置]が期待どおりに機能し、通貨記号の位置のカスタマイズがサポートされるようになりました。 以前は、Zend Framework 1 から移行した後、toCurrencyメソッドはpositionパラメータを無視していました。 この問題は、管理インターフェイス全体で発生していました。
- 同時要求による更新時の競合状態を防ぐために、注文に対して Mutex が実装されました。 以前は、注文キャンセルの同時リクエスト(競合状態)により、
inventory_reservationテーブルに重複したエントリが発生していました。
populateWithArray関数は、オブジェクトプロパティをスネークケースに正しく変換し、AbstractModelのゲッターおよびセッターと互換性を持つようになりました。 以前は、データ属性名に複数の大文字が連続して含まれている場合、スネークケースの形式が正しくありませんでした。
- 製品を保存した後、
catalog_product_entity_varcharテーブルの自動インクリメント値が正しくインクリメントされるようになりました。 以前は、この値は 10 増加しました。
- JavaScript/CSS キャッシュ(
No such file or directory)をフラッシュしようとすると、Magento Open Sourceがこのファイルシステム例外をスローしなくなりました。
value_idのcustomer_entity_intの値が正しく増分されるようになりました。 これらの属性を組み込んだエンティティを更新する際には、insert on duplicate key updateの代わりに更新クエリを実行します。 その結果、EAV モデル内で使用される自動インクリメント列が線形的に増加するようになりました。 以前は、挿入クエリの失敗が原因で、列の自動インクリメントプロセスで値がスキップされていました。 GitHub-28387
- 不要な空白を不要な
id属性から削除しました。 (このバグはMagento Open Source 2.4.6 コードの変更によって導入されました)
- ストアがシングルストアモードの場合に、ストア URL にストアコードが表示されなくなりました。 GitHub-36831
aroundプラグインに対するマイナーアップデートが行われました。 GitHub-31443
- スウォッチ
Helperは、誤解を招くインポートエイリアスを削除するためにリファクタリングされています。 GitHub-31373
- 管理者ユーザーは、
sitemap.xmlファイルを期待どおりに削除または名前変更できるようになりました。 以前は、管理者ユーザーが管理者からファイルを削除できましたが、ファイルシステムには残っていました。 GitHub-37468
- クーポンが適用された注文の支払いが失敗した場合、クーポンは使用中としてフラグ付けされなくなりました。 キューメッセージは、コンシューマーの開始時に公開された順序で処理されるようになりました。 以前は、最初のメッセージは、メッセージがキューに入っているかどうかを確認するためだけにキューから取り出され、その後で拒否されたため、最初のメッセージは最後に処理されていました。
- ユーザーが配送ラベルを印刷しようとすると、Magento Open Sourceがログファイルに例外をスローしなくなりました。 以前は、添付ファイルを含む応答ヘッダーを拡張機能が変更した場合、システムはログファイルに例外をスローしていました。
- その他のHTML クラスのサポートが
elements.xsdに追加されました。 GitHub-36891
一般的な修正点
reponseBody変数の名前をresponseBodyでapp/code/Magento/CatalogRule/Controller/Adminhtml/Promo/Catalog/NewConditionHtml.phpに変更しました。GitHub-38093
- 製品のアップデートをスケジュールしても、複数選択の属性データがクリアされなくなりました。 以前は、製品の更新がスケジュールされると、製品の複数選択属性データが誤ってクリアされていました。 GitHub-37675
- デフォルト以外のストア範囲を持つ製品を保存しても、
ProductRepositoryを使用して読み込まれた際に、変更されていない属性がストアスコープされるようになりました。 GitHub-8897
- 製品詳細ページのカスタムフィールド検証に、有益なエラーメッセージが追加されました。 GitHub-38006
- 名前フィールドで特殊文字を使用できるようになりました。 以前は、名前バリデーター内ではアンパサンド文字(&)が制限されていたため、顧客名にアンパサンドが含まれていると、顧客の追加または編集操作がブロックされていました。 GitHub-38080
- 特定のストアへのアクセスが制限されている管理者ユーザーは、一括更新アクションを使用して製品レビューを更新できるようになりました。 以前は、Magento Open Sourceは次の例外をスローしていました:
report.CRITICAL: TypeError: array_intersect(): Argument #1 ($array) must be of type array, null given in app/code/Magento/AdminGws/Model/Models.php:439。
- ストアフロントのログインページのパスワードを表示機能で、パスワードが期待どおりに表示されるようになりました。 以前は、パスワードが表示されていませんでした。 GitHub-37432
- 製品比較リストは、ゲストの買い物客に対して常に web サイト固有になり、他の web サイトから追加された製品(両方の web サイトに割り当てられた製品を含む)は含まれなくなりました。
- 絵文字を含むCMS コンテンツブロックをデータベースに保存する際、絵文字の後に切り捨てられなくなりました。 以前は、デフォルトのデータベース設定で 4 バイト文字がサポートされていなかったので、絵文字の後にコンテンツが切り捨てられていました。
- ログインページの「Show Password」チェックボックスがアクティブな場合、パスワードが期待どおりに表示されるようになりました。
- 顧客エンティティ(
rp_token)検証のパスワードリセットトークン システム属性が、顧客アカウントの作成時の属性検証から削除されており、発音区別検証は結果の顧客 E メールにのみ含まれています。 以前は、Magento Open Sourceは顧客レコードを保存せず、次のエラーを表示していました:Something went wrong while saving the customer。
- 列を削除した後、管理ページとブロックグリッドに編集を正常に保存できるようになりました。 GitHub-37525
- ユーザーは、別のデバイスでパスワードをリセットした後、あるデバイスから新しいパスワードで正常にログインできるようになりました。
- 管理者の顧客の住所 都道府県 フィールドに、最後に保存された値が期待どおりに保持されるようになりました。 以前は、このフィールドから値を削除した場合、Magento Open Sourceは引き続き、削除された値を 都道府県 フィールドに表示していました。 GitHub-36846
- カテゴリの RSS フィードを要求しているときに、RSS Feed Top Level Category が有効になっているとエラーが発生しなくなりました。 以前は、RSS フィードのカテゴリページを閲覧すると、が有効になっていたときにElasticsearchでログファイルにエラーが
CRITICAL生し RSS Feed Top Level Category いました。
- ユーザーロールの作成中にロールの範囲が変更されると、
gws_store_groupsに正しい値が保存されるようになりました。 以前は、役割の範囲をAllとして選択した場合、ユーザーの作成時にはgws_store_groups値が null として保存されていましたが、役割の編集時には保存されていませんでした。 また、役割の範囲をCustomとして選択した場合、gws_store_groupsの値は常に null として保存されます。
- Add Store Code to Urls 設定が有効な場合、管理者のログインページの管理者のリセットパスワードリセット リンクをクリックして、パスワードリセットページにアクセスできるようになりました。 管理者のパスワードリセットリンクをクリックすると、以前にログインページまたは 404 ページが開いていました。
- 管理統計ダッシュボードの日付範囲は、設定で設定されたタイムゾーンに基づいて計算され、UTC に変換されてデータベースからデータを取得するようになりました。
- CMS階層フィルターは、ストア表示をフィルタリングして、管理 Save/Content で Hierarchy をクリックすると、期待どおりに動作します。 以前は、Save をクリックするとページが更新されましたが、コンテキストが失われ、選択したストア表示は表示されなくなりました。
- 「Send invitation」ボタン(管理 Marketing/Private sales/Invitation)をクリックすると、POST リクエストとフォームキーが送信され、招待が正常に送信されるようになりました。 以前は、このボタンをクリックした場合、HTTP POST メソッドもフォームキーも存在しませんでした。
- AWS S3 では、0 バイトのファイルをリモートストレージに正常にコピーできるようになりました。
- 管理者ユーザーは、ストア ID が web サイト ID と一致しない別の web サイト用にその顧客が作成された場合、管理者から新しい顧客アドレスを追加できるようになりました。 以前は、Magento Open Sourceには「
Something went wrong」というポップアップメッセージが表示されていました。 GitHub-36582
- これで、CMS ブロックエディターページに正しいウィジェット
block_idの値が表示されるようになりました。 GitHub-29644
GraphQL
- 設定可能な製品を含んだリストに対してクエリを実行する際に、
getCustomerWishlistクエリで内部サーバーエラーが発生しなくなりました。
customerCartクエリで、バンドル製品に適用されたすべての割引が期待どおりに返されるようになりました。 以前は、バンドル製品に適用された割引合計はゼロとして返されていました。
- 設定可能な製品を含んだリストに対してクエリを実行する際に、
getCustomerWishlistクエリで内部サーバーエラーが発生しなくなりました。
is_subscribedフラグ、そのリゾルバー、キャッシュおよび関連するテストの宣言が、CustomerGraphQlモジュールからNewsletterGraphQlモジュールに移動されました。
addProductsToCartの突然変異は、user_errorsでの無関係なエラーを報告しなくなりました。 以前は、予想される操作エラーと共に、買い物かごに関連するエラーがuser_errorsに含まれていました。 GitHub-37908
productsクエリ製品フィルターは、完全一致だけでなく、部分一致の結果も返すことができるようになりました。 新しいmatch_type(PARTIAL、FULL)属性では、一致するタイプの指定がサポートされています。 以前は、クエリは、完全な一致のみを返していました。
- 同時要求による更新中の競合状態を防ぐために、
addConfigurableProductsToCartクエリに mutex が追加されました。 以前は、マーチャントが設定可能な同じ製品を買い物かごに追加するために 2 つの並列リクエストを送信した場合、同じ製品 SKU を持つ 2 つの個別の項目が追加されていました。 GitHub-37847
- Use in Layered Navigation が Filterable (no results) に設定されている場合、GraphQL応答の製品の集計に属性のゼロ以外の値が含まれるようになりました。 以前は、ゼロ以外の値のみが返されていました。
- カスタム製品属性を含む買い物かご関連の操作に対する
setShippingAddressForEstimateクエリのパフォーマンスを改善しました。 以前は、クエリは、パラメーターが変数として送信された場合にすべての製品属性を読み込んでいました。
productsクエリConfigurableProduct.configurable_optionsフィールドで、有効な製品が 1 つ以上ある値のみを返すようになりました。 以前は、このフィールドは無効なシンプルな製品を返しました。
GetCategories queryが生成する不要な SQL クエリの数を減らすことにより、SQL のパフォーマンスを向上しました。
- GraphQL ライブラリコンポーネントのアドレスエラー処理が期待どおりに動作するようになりました。
- 動的な価格が「いいえ」に設定され、割引が適用される場合、
productsクエリは、関連するストアフロントの価格の詳細をすべて返すようになりました。 以前は、製品の価格範囲は返されませんでした。 GitHub-35649
- GraphQLのトランザクション名に、New Relic ログの最上位のクエリ名のみが含まれるようになりました。 以前は、トランザクション名にはセカンダリクエリ名も含まれていました。
- GraphQL ライブラリコンポーネントのアドレスエラー処理が期待どおりに動作するようになりました。
- 商品の表示設定が
Catalogに設定されている場合、その商品に対するproductsクエリで設定が正しく解決されるようになりました。 以前は、提供されているフィルターはすべてVisibility: Catalog設定に切り替えられました。 GitHub-36591
customerクエリは、製品価格が税を含むように設定されている場合、注文の税を含むproduct_sale_priceフィールドを返すようになりました。 GitHub-36946
DateTimeタイプの製品属性が、製品クエリのFilterRangeTypeInputフィルターにマッピングされるようになりました。 以前は、これらの属性はFilterMatchTypeInputにマッピングされていました。 この変更の結果、DateTime属性に対するクエリのフィルタリングには、一致値ではなくfrom値とto値が必要になります。
customerクエリは、ストア ID でフィルタリングした場合に、特定のストア表示に関連するカスタマーレビューのみを期待どおりに返すようになりました。
categories応答値に null 値が含まれる場合、items.redirect_codeクエリがエラーを返さなくなりました。 GitHub-36675
changeCustomerPasswordのミューテーションは、パスワードのリセットが成功した後、期待どおりにメールをトリガーするようになりました。
- URL 書き換え
urlResolverが絶対 URL の場合、routeおよびTarget Pathクエリが結果を返すようになりました。 以前は、リダイレクトデータの取得にurlResolverクエリを使用した場合、NULL が返されていました。
productsクエリは、正しいラベルを返すようになりました。 GitHub-29635
categoryListクエリは、バンドル製品の子製品に対して、入力されたproductセクションをoptionsブロックの期待どおりに返すようになりました。 以前は、バンドル製品の子製品に関する情報は返されませんでした。
routeクエリは、内部サーバーエラーを発生させずに、カテゴリおよび製品のルートを期待どおりに返すようになりました。 GitHub-36544
- 複数のカテゴリが選択されている場合、
productsクエリでurl_key値が取得されるようになりました。
productsクエリは、指定された共有カタログに割り当てられた製品に対してのみ集計を返すようになりました。
- New Relic GraphQLの取引に取引名が追加されました。 GitHub-36874
OptionValueProviderクラスget()メソッドは、指定されたoption_idに基づいて属性オプション値を期待どおりに返すようになりました。 以前は、エラーが返されていました。 GitHub-35910
productsクエリは、使用可能なすべての集計(フィルター)と、正しく翻訳されたラベルを返すようになりました。 以前は、価格およびカテゴリ集計ラベルが期待どおりに翻訳されていませんでした。 GitHub-36140
ProductCardでrelated_products、upsell_products、crossell_productsをクエリする際に、フラグメントProductInterfaceを使用できるようになりました。 GitHub-29769
productsクエリでは、関連製品、アップセル製品、クロスセル製品を保存順に返すようになりました。 GitHub-36461
- GraphQL クエリで、関連する商品データが位置で並べ替えられて返されるようになりました。 GitHub-33010
category_url_pathがProductAttributeFilterInputに追加されました。これにより、1 つのクエリでカテゴリのすべての製品をリクエストできるようになりました。 GitHub-32460
- 検証を処理するメソッドの前に実行された、GraphQLのバリエーションに現在のストアを設定するメソッドのエラーを修正しました。 GitHub-31336
画像
- 管理者の favicon アップロードフォームで、
.icoファイルタイプがサポートされるようになりました。 GitHub-34858
インポート/エクスポート
- 製品の読み込みプロセスで、正しい区切り文字を使用して値が解析されるようになりました。 以前は、読み込みプロセスでは、パイプ(「|」)演算子を使用して、決定された値区切り記号がデフォルト値と等しくなくなるまで複数選択の値を解析していました。 その後、読み込みプロセスが失敗しました。
- CSV 読み込みで
URL Key値が更新されると、301 リダイレクトが自動的に作成されるようになりました。
- 配送用テーブルの料金が、テーブル料金インポートの CSV ファイルで期待どおりに更新されるようになりました。 テーブルレートのアップロードファイルは、非同期設定プロセッサの cron ジョブが実行されるまで、一時的に保存されます。 この cron ジョブは、ファイルの新しい場所を選択し、それに応じてファイルを処理します。 以前は、非同期プロセッサーがファイルを間違った場所で検索したので、テーブルの速度が期待どおりに更新されませんでした。
- ファイルの書き出しグリッドに、タイムスタンプに関係なく、書き出されたすべてのファイルが表示されるようになりました。 以前は、グリッドには、同じタイムスタンプを持つすべての書き出し済みファイルが表示されませんでした。 GitHub-36951
- カスタマイズ可能なオプションを持つ製品を正常に読み込めるようになりました。 以前は、読み込み時にオプション データが失われていました。 GitHub-37598
- 書き出された CSV ファイル内の特殊文字が、Excel で期待どおりに表現されるようになりました。 GitHub-37921
- Customers and Addresses (single file) を使用したストックソースと顧客アドレスの読み込み オプションが正常に完了しました。
- メモリ不足が原因で製品の読み込みが失敗しなくなりました。 以前は、既に約 1,000 万個の製品が含まれているデータベースに任意の数の製品を読み込んだが、メモリ不足が原因で失敗していました。
- 検証チェックで、読み込む有効なデータがない場合、期待どおりに読み込みプロセスが停止し、Magento Open Sourceに「
There are no valid rows to import」というエラーが表示されるようになりました。 以前は、これらの条件で検証は成功しましたが、読み込みプロセスが失敗し、次のメッセージが表示されました:entity values are mixed。 GitHub-32905
- 同じ製品の URL キーをインポートしても、既存のデフォルトのストア表示キーが上書きされたり削除されたりすることがなくなりました。 ストアビューで URL の書き換えが再生成されるのは、上書きされた
url_key値がない場合のみです。 以前は、URL をインポートすると、同じ URL キーで書き換えられるので、既存のデフォルトのストア表示 URL キーが上書きされていました。 (URL の書き換えkey_store削除されましたが、製品のデフォルトストア表示レベルの URL の書き換えはまだkey_storeに設定されていました。)
- 読み込み中に製品数が予期せず変更されなくなりました。 キャッシュフラッシュは、読み込みプロセス後まで延期されるようになりました。
- スケジュールされたインポートアクションのステータスは、インポート操作の成功または失敗を正確に表すようになりました。 以前は、すべてのアクションが成功としてログに記録されていました。
- Magento Open Sourceでは、顧客レコードのインポート時に Disable Automatic Group Change Based on VAT ID 設定を考慮するようになりました。 以前は、インポートファイルの
disable_auto_group_change値は無視されていました。 GitHub-36409
Magento\Framework\Convert\Excelでは、スペースの後に数字が続く処理に成功しました。 Excel XML で、フィールドがStringとしてエンコードされるようになりました。 以前は、Excel ライターでこれらの値がnumberとしてエンコードされたため、無効なファイルが生成されていました。 GitHub-33422
- マーチャントは、インポートデータが表示されるロケールと、データバリデーターによるこのデータの解析方法を指定できるようになりました。 ロケール値が指定されていない場合、Magento Open Sourceでは、データを解析するために(デフォルトのストアビューではなく)デフォルトの設定ロケールが使用されます。 管理者では、インポートプロセスとエクスポートプロセスは引き続き管理ユーザーインターフェイスのロケールを使用して、データのインポート、解析、書式設定を行います。
- 製品を読み込む管理者ユーザーとは異なるロケール設定を使用して管理者ユーザーが作成した
country_of_manufacture属性を持つ製品を読み込むと、検証エラーがスローされなくなりました。 以前は、この読み込み操作により、country_of_manufacture属性で検証エラーが発生する可能性がありました。
manage_stock値がuse_config_manage_stockの場合、書き出された製品の1値が正しくなるようになりました。 以前は、このデフォルト値は正しくありませんでした。
- スケジュールされた読み込み処理中に画像が正常に読み込まれなかった場合、Magento Open Sourceのスケジュールされた読み込みグリッドに情報エラーメッセージが表示されるようになりました。 以前は、エラーメッセージは表示されませんでした。
- 製品画像が見つからない場合に、製品の読み込みプロセスが中断されなくなりました。 以前は、CSV ファイルを使用してサードパーティのサービスを読み込む際に商品の画像が見つからなかった場合、Magento Open Sourceに「
Maximum error count has been reached or a system error is occurred!」というエラーが表示されていました。
- 列の属性値にコンマが含まれている場合に、製品の読み込みプロセスで検証エラーがスローされ
configurable_variationsようになりました。
- デコードは、エクスポートプロセスから除外されています。 CSV エクスポートファイルのテキストは、読み込み後も変更されません。 その結果、再読み込み後も説明は変更されません。 以前は、製品の書き出しと読み込み後に、ページビルダーエディターでHTML タグが削除されていました。
- 環境変数として追加されたデフォルト以外の設定(web サイトまたはストアの範囲)によって、再帰エラーで
app:config:importプロセスが中断されなくなりました。
- 保存時に更新モードのカタログ検索と価格インデクサーがインポート後に無効にならなくなりました。 以前は、新しい商品と既存の商品が読み込まれると、Elasticsearch Indexer ドキュメントのバージョンが変更されていました。
- 製品レポートが
varディレクトリに書き出されるようになりました。 以前は、これらのレポートは、ドキュメントルートディレクトリ(クラウドインスタンスの読み取り専用ディレクトリ)に書き出されていました。
- 複数選択の顧客アドレスフィールドが空でも、書き出しプロセスが中断または停止しなくなりました。
索引
- カタログルールが設定されていない場合の
catalogrule_productインデクサーのパフォーマンスが向上しました。 GitHub-34784
- 価格インデクサーのパフォーマンスに関する問題が解決されました。 インデクサーのパフォーマンスが徐々に低下することはなくなりました。 インデクサーは、一時テーブルの作成方法を変更することでインデクサーの処理速度を向上させるために、リファクタリングされました。 これらの一時テーブルは、時間のかかるDELETE文でアドレス指定されるのではなく、再作成されるようになりました。
- 価格インデクサーのパフォーマンスが向上しました。 価格インデクサーにインデックスヒントが追加され、インデックス作成中に実行される MySQL クエリの実行時間が改善されました。
- すべてのインデクサーが同じ色を使用してインデクサーの状態を表すようになりました。 GitHub-34648
- ルールが一部の web サイトに割り当てられていないデプロイメントでのカタログルール製品インデクサーのパフォーマンスが向上しました。
- インデクサーが Update on schedule に設定されている場合にカスタム製品タイプを作成しても、インデックスの更新
cronタスクが失敗しなくなりました。 GitHub-36471
- 顧客グリッドに新しく作成されたカスタム顧客属性が含まれる場合に、
bin/magento indexer:reindex customer_gridが MySQL エラーで失敗しなくなりました。 GitHub-36233
- 複数のインデクサーのインデクサーモードの変更(一括アクションインデクサーモードの変更)で、現在のモードが適用されているモードと異なる場合にのみ、インデクサーのモードを変更するようになりました。 これにより、データベースへの不要なトリップを防ぐことで、パフォーマンスが向上します。 GitHub-36823
- 多数の属性オプションを持つ製品のインデックス作成が改善されました。 GitHub-36386
インフラストラクチャ
- 管理者の使用状況の有効化コントローラーに、欠落している
returnステートメントを追加しました。 以前は、returnステートメントがなく、FrontendControllerクラスのコントローラが正しく処理されませんでした。 GitHub-31374
- MySQL 8.x に準拠するために、MySQL
CREATE TEMPORARY TABLE ... LIKEをリファクタリングされたCREATE TEMPORARY TABLEに置き換えました。GitHub-37926
- Magento Open Sourceでは、不正な形式の HTTP リクエストがサーバーに送信されたときに表示されるエラーメッセージに、サーバーのルートへのフルパスが含まれなくなりました。 文字列のみが 2 番目の引数として
explodeメソッドに渡されるようになりました。
restricted_classes.phpさんはZend_Validate_File_Uploadさんと交替しました。 以前は、php.iniで設定された値を超える読み込みファイルをアップロード中にバリデーターがクラッシュしていました。 GitHub-37281
- メールテンプレートエンジンで、ネストされた特定のディレクティブ(
{{if}}{{depend}}...{{/depend}}{{/if}}など)を正しく処理できるようになりました。 GitHub-36438
- 集計データを含む
productクエリが、ブールタイプの製品属性に対して正しいラベル値を返すようになりました。 GitHub-29123
directory_country_regionテーブルにウクライナの地域を追加しました。 GitHub-35187
var/tmpとpub/staticが異なるファイルシステム上にあり、CSS Merging Enabled が有効になっている場合、結合しても CSS ファイルが破損しなくなりました。 一時ファイルは、ターゲットファイルと同じ静的ディレクトリに作成され、両方のファイルが同じファイルシステム上にあることを確認します。 その結果、名前を変更する呼び出しはアトミックです。 GitHub-29172
getId()でメンバー関数intを呼び出すと、管理者で顧客が表示されたときに例外がトリガーされることがあった場合に発生する可能性があるエラーを修正しました。
- デザインテーマ設定プロセッサーの配列タイプに対して、タイプチェックが適用されるようになりました。 GitHub-34440
Inventory management
- 商品は、商品数量の返品を含むクレジットメモの後で、自動的に在庫中ステータスに戻るようになりました。 以前は、商品の在庫切れが発生してもクレジットメモがこの商品の在庫を返した場合、マーチャントは商品の在庫ステータスを手動で変更する必要がありました。
- デフォルトのソース項目の再インデックスを実行する冗長なリクエストを削除し、非同期モードでのインベントリインデクサーのパフォーマンスを向上しました。
- 設定可能な製品のストアフロント在庫数の精度に影響を与えた在庫インデクサーの問題を修正しました。 GitHub-36421
- REST
V1/inventory/source-itemsを介した在庫ソース項目の更新が、より高速に動作するようになりました。 この呼び出しでは、変更されていない在庫商品に対する再インデックスまたはクリーンキャッシュ操作はトリガーされなくなります。
- REST
V1/products/<sku>では、製品の在庫ステータスを更新する際に、自動在庫再インデックスをトリガーするようになりました。 以前は、更新される製品の在庫の再インデックスがトリガーされていませんでした。
V1/inventory/source-itemsが子製品を更新した際に、ストアフロントで設定可能な製品ストックステータスが期待どおりに更新されるようになりました。
POST <store_code>/V1/inventory/source-itemsREST 呼び出しで、返された在庫ソース項目の空白のペイロードを検証し、必要に応じて検証に関するエラーメッセージを送信するようになりました。
- マーチャントは、製品に対して No Manage Stock 設定が有効になっている場合、注文を受け取る準備が整ったことを買い物客に通知できるようになりました。 以前は、この設定を有効にすると、Magento Open Sourceに「
Your order is not ready for pickup」というエラーメッセージが表示されていました。
- マーチャントは、設定可能な製品に関連付けられた単純な製品が削除された注文について、クレジットメモを作成できるようになりました。 以前は、マーチャントはクレジットメモを作成できず、Magento Open Sourceは
TypeErrorの例外をスローしました。
- 管理グリッドソース数は、フィルターが適用された後に有効なレコードを返すようになりました。 以前は、
getSourcesCountメソッドは、フィルターが適用された後、常にソースの合計数を返していました。
- 「在庫切れを下部に移動」オプションを使用して製品を並べ替えても、カテゴリページが管理者ダッシュボードにリダイレクトされなくなりました。 この問題は、条件付きステートメント内に SQL 結合ステートメントを配置することで、それが既に含まれていないことを確認した後でのみ解決されました。 以前は、ページは次のメッセージを表示して管理ダッシュボードにリダイレクトされていました:
Invalid security or form key. Please refresh the page。
AUTO_INCREMENTテーブルのinventory_source_itemは、UPDATE操作のたびに増加しなくなりました。 以前は、各更新によってこのテーブルのAUTO_INCREMENTが増えたため、新しいレコードをAUTO_INCREMENTに追加する際にinventory_source_item tableの値が範囲外になっていました。 その結果、管理者ユーザーが管理者から新しい製品を作成しようとすると、次のエラーが発生しました:Numeric value out of range...。
- 管理者ユーザーは、Inventory managementを使用して、特定のストア表示範囲について、管理者から顧客の買い物かごに商品を追加できるようになりました。 以前は、在庫 ID が適切に決定されず、管理者ユーザーは、製品を顧客の買い物かごに追加できませんでした。
- インベントリとカタログ間の同期は、Synchronize with Catalog 設定に依存しなくなりました。 以前は、この設定が有効な場合にのみ、製品が適切に同期されていました。
- 出荷元を選択する際に、買い物客が利用可能な商品の範囲内にある注文から商品数量を控除した場合に、ページの再読み込み後にMagento Open Sourceがエラーをスローしなくなりました。
- 設定可能な製品とその子製品の在庫値が一括在庫更新によって更新された場合に、設定可能な製
Stock Availabilityの在庫ステータスが適切に更新されるようになりました。 以前は、一括更新によって設定可能な製品とその子製品を在庫に戻すことはできませんでした。
- デフォルト以外のソースのデータタイプは、最大 8 桁の整数をサポートするように
DECIMAL (12, 4)に更新されました。これは、デフォルトの在庫に実装されている制限と同じです。 この値は、管理者の製品の追加および編集ページと同期されるようになりました。これにより、すべてのタイプのインベントリソースに対して最大 8 桁の入力検証がサポートされます。 以前は、Quantity フィールド(デフォルト以外のソースの場合)の入力は、最大 6 桁までしかサポートされていませんでした。
- ストアフロントから注文されたデフォルト以外のソースが出荷用に処理される際に、デフォルトとデフォルト以外の両方のソースに、製品の販売可能数量に関する正しい情報が表示されるようになりました。 以前は、Magento Open Sourceで商品ソースの間違った在庫ステータスが表示されていました。
\Magento\Catalog\Model\Product::getIsSalable()は、製品オブジェクト(\Magento\Catalog\Model\Product::getStoreId())で定義された範囲に基づいて在庫ステータスを返すようになりました。 以前は、getIsSalable()は、製品オブジェクトに関係なく、現在の範囲に基づいて在庫ステータスを返していました。
ログ
- 管理者ユーザーは、管理者の「一括アクションログ」セクションで、統合によって作成された一括アクションのログを確認できるようになりました。
ログイン
- あるブラウザーでパスワードをリセットした後に別のブラウザーでログインしても、例外が発生しなくなりました。 GitHub-36447
- お客様は、アカウントを期待どおりにアクティブ化した後で、ログインページにリダイレクトされるようになりました。 以前は、顧客は自動的にログインしていました。
ニュースレター
- Commerceは、ニュースレターの新規購読者を受け入れる前に、ニュースレター購読機能が有効になっているかどうかを確認するようになりました。 GitHub-33040
注文件数
- 管理者の買い物かごから注文する項目のリストに移動された製品が、買い物かごから期待どおりに削除されるようになりました。 GitHub-37538
- マーチャントは、一部が報酬ポイントで支払われた注文を部分的に返品した場合に、期待どおりにクレジットメモを作成できるようになりました。 以前は、販売員が部分返品を作成した際に、注文ステータスが誤って「クローズ」と識別され、「管理」注文ページにクレジット・メモ・オプションが表示されていませんでした。
- Magento Open Sourceは、部分的にキャンセルされた注文に正しい割引額を適用するようになりました。 以前は、
base_discount_cancelled列で計算された割引額が、注文が変更された際に誤って計算されていました。 割引注文の請求書に負の値のサポートが追加されました。
- Magento Open Sourceでは、管理者ユーザーが管理者で順序を作成した際に指定された並べ替え順に基づいて、カスタムの顧客住所属性を並べ替えるようになりました。
- マーチャントがこのページから検索を開始すると、「管理受注グリッド」ページが期待どおりに読み込まれるようになりました。 以前は、マーチャントがこのテーブルから注文を検索しようとすると、ページがフリーズし、Magento Open Sourceがブラウザーコンソールに
Request-URI Too Longエラーを表示していました。
- データベースから注文を読み込む回数を減らすことにより、
OrderRepository::get()メソッドのパフォーマンスを向上しました。 以前は、このメソッドは 1 つの注文を複数回ロードしていました。 GitHub-36636
- マーチャントは、他の注文項目が払い戻し可能な場合に、合計がゼロの一部の項目を含む注文に対してクレジットメモを生成できるようになりました。 以前は、顧客が注文の一部の商品を 100% 割引にした場合、マーチャントは複数の払い戻しを実行できませんでした。
- 管理者から子製品を並べ替える際に、子製品と親製品間のリンクが注文ページに表示されるようになりました。 GitHub-37028
send()呼び出し中にエミュレーションが完了し、エラーが記録されなくなった時点で、getInfoBlockHtml()呼び出し中にエミュレーションが開始されるようになりました。 以前は、system.logファイルは次のエラーであふれていました:main.ERROR: Environment emulation nesting is not allowed。 GitHub-35603
- マーチャントは、他の注文項目が払い戻し可能な場合に、合計がゼロの一部の項目を含む注文に対してクレジットメモを生成できるようになりました。 以前は、顧客が注文の一部の商品を 100% 割引にした場合、マーチャントは複数の払い戻しを実行できませんでした。
- 管理者から子製品を並べ替える際に、子製品と親製品間のリンクが注文ページに表示されるようになりました。 GitHub-37028
- 注文ページのヘッダーセクションに、送信された請求書、クレジットメモ、出荷に関する期待される情報が含まれるようになりました。 GitHub-27474
- 設定可能な商品を 1 つのみ含む注文のクレジットメモが正しく生成されるようになりました。 以前は、
isLast()関数は期待どおりにtrueを返しませんでした。 GitHub-36722
- メインデータクエリを最適化することで、
aggregate_sales_report_bestsellers_datacron ジョブのパフォーマンスが向上しました。
- バンドル製品を含む注文に対して部分的な払い戻しが行われた場合、注文ステータスが正しくなりました。 以前は、一部の払い戻しが発行された後、残りの注文が完了していなくても、注文ステータスが完了とリストされていました。 GitHub-37377
- 1 回限りのカスタム価格を使用して管理者から最初に注文を生成すると、買い物客はカスタム価格を使用して製品を注文できなくなりました。 以前は、注文にカスタム価格の商品が含まれている場合、このカスタム価格は、再注文機能を使用して注文された他の注文に適用されていました。
- 買い物客は、誤った注文ステータスを注文ページに保存できなくなりました。 品目の出荷時に、注文ステータスが「完了」から「処理中」に変更されなくなりました。 以前は、Magento Open Sourceは、買い物客がコメントを入力した後に注文ステータスを保存する前に、現在の注文ステータスを確認していませんでした。 GitHub-36562
- 販売注文グリッドは、期待どおりに、すべての注文と非同期で同期されるようになりました。 GitHub-36562
- 注文ページの「顧客注文」セクションの購入日によるフィルタリング機能が、期待どおりに動作するようになりました。 以前は、同じタイムゾーンがメソッドに提供された場合、タイムゾーン変換ロジックでエラーがスローされるとJavaScript エラーが発生していました。
- 管理者ダッシュボードに、最初の読み込み時に正しい注文統計が表示されるようになりました。 以前は、ダッシュボードに間違った注文情報が表示されていましたが、期間が更新されると、正しい情報が表示されていました。
- 管理者ユーザーは、管理者から新しい注文を作成する際にストア表示を選択した後、期待どおりに注文ページにリダイレクトされるようになりました。
GET V1/orders/<OrderID>エンドポイントは、シンプルな製品の在庫ステータスに関係なく、設定可能な製品とシンプルな製品の両方に関する情報を順に返すようになりました。 管理者ユーザーは、選択した項目(製品)が在庫または販売可能な場合にのみ、今すぐ注文できます。 以前は、この API は在庫がある製品に関する情報のみを返していました。
- 送料に税金が含まれており、割引後に税計算が適用される場合に、送料無料が有効になっているとクレジット メモ ページがクラッシュしなくなりました。 以前は、Magento Open Sourceは
Division by zero例外をスローしていました。 GitHub-36800
- 注文ステータスを指定せずに
rest/V1/orders/{id}/commentsエンドポイントを使用して注文に関するコメントを投稿しても、注文の表示に影響しなくなりました。 以前は、注文ステータスはsales_orderテーブルとsales_order_gridテーブルに NULL として記録され、マイ注文ページも管理注文グリッドも注文を表示しませんでした。 GitHub-34180
ページビルダー
- ページビルダーでサイズ変更した場合、画像が正しい縦横比を維持するようになりました。 GitHub-37493
- 指定された最大ファイルサイズを超える画像をアップロードしようとした場合に、必要に応じてページビルダーにエラーメッセージが表示されるようになりました。 以前は、Commerceに、指定された最大値より小さいアップロード済み画像ファイルに対してアラートポップアップメッセージが表示されていました。
- CMSページの製品スライダーに、スライダーに含めるように選択した子製品の親製品が含まれるようになりました。 以前は、親製品がスライダーから除外されていました。
Magento_AsyncConfigモジュールが無効な場合、HTMLで変換されたコンテンツがメールテンプレートに期待どおりに表示されるようになりました。 以前は、メールテンプレートには raw HTMLのみが含まれていました。
- Chrome ブラウザーでのページビルダーの保存操作のパフォーマンスが向上しました。
- ページビルダーカルーセルから買い物かごに製品を追加しても、同じ製品を表示している 2 つの異なるウィジェットを含むページの項目数が重複しなくなりました。
- ハイパーリンクタグに
tabindexHTML属性が追加されなくなりaハイパーリンクを編集してテンプレートを保存する場合にページビルダーが追加されるようになりました。
- products ウィジェットとページビルダーのプレビューで、HTMLの特殊文字を正しく処理できるようになりました。 以前は、製品ウィジェットには、
&文字を含む SKU が正しく表示されていませんでした。
- プレビューモードで完全なコンテンツブロックを選択および更新する際に、ページビルダーのテキスト要素のコンテンツが期待どおりに更新されるようになりました。
- ページビルダーのテキストエディター間でテキストのコピーと貼り付けを正常に実行できるようになりました。 以前は、テキストを貼り付けようとしたページが保存されず、Magento Open Sourceに「
[ERROR] Page Builder was rendering for 5 seconds without releasing locks.」というコンソールエラーが表示されていました。
- ページビルダー
column-blockページビルダーの以前のバージョンで作成されたコンテンツタイプが正しく表示されるようになりました。
- 管理者からの製品作成時の製品メタデータの説明のフィルタリングが改善されました。 以前は、ページビルダーが有効な場合、製品メタデータの説明は、デフォルトのマスクに基づいて生成されていました
{{name}} {{description}}デフォルトの製品メタ記述マスクが{{name}}で構成されるようになりました。 GitHub-36107
- コンテンツのない動的ブロックを追加しても、エラーがトリガーされなくなりました。
- ページビルダーコンテンツの列の表示に関する問題が解決されました。 以前は、
column-lineコンテンツタイプのコンテンツはレンダリングされませんでした。 GitHub-3949
支払い
- Magento Open Sourceは、このエラーが発生した場合に注文の作成を防ぐことで、PayPal からの 502 エラーを正しく処理するようになりました。 以前は、PayPal の 502 エラーにもかかわらず、注文は引き続き作成されており、Magento Open Source レコードと PayPal の間で不一致が発生していました。
- PayPal Express のチェックアウトトランザクションに、子製品 SKU と完全な製品タイトルが含まれるようになりました。
Magento/Paypal/Model/Cart.phpファイルは、親製品のタイトルと共に子製品 SKU を収集して、製品のタイトルを子 SKU で識別するようになりました。 GitHub-36808
- Card Security Code Does Not Match 設定は、Payflow Pro 支払いプロセス中に期待どおりに処理されるようになりました。 以前は、この評価プロセスが完了せず、チェックアウトがブロックされていました。
- 買い物客が Vault トークンを持っていない場合、「Vault の支払方法」オプションが管理者のチェックアウトワークフローに表示されなくなりました。 GitHub-36273
- PayPal ボタンが有効な場合、Venmo ボタンを非表示にできるようになりました。 以前は、Venmo のボタンを買い物かご、ミニ買い物かご、製品の詳細、チェックアウトページから削除できませんでした。
- 買い物客は、チェックアウト時にクーポンコードを適用する際に配送方法を選択できるようになりました。 これまでは、これらの条件の下で、Magento Open Sourceがエラーをスローし、注文に定額配送を割り当てていました。
- PayPal および PayPal クレジット支払い方法のストアフロント処理の問題が解決されました。
- ローカル支払いが有効な場合に、Ideal payments によるで支払われた注文のフォールバック URL の問題を解決しました。
- 買い物客は、姓を追加せずに PayPal 注文を作成できなくなりました。
Braintree
- Braintreeの支払い情報は店舗ごとに保存され、買い物客には、買い物をしている店舗に保存されたカード情報のみが表示されるようになりました。 以前は、買い物客は、チェックアウト中にすべての店舗から保存されたカード情報を確認できました。 GitHub-34253
- 買い物客は、カード支払い用の Vault が無効になっている場合に、Braintreeの支払い方法を使用して、複数の住所に発送される注文をチェックアウトできるようになりました。 GitHub-37615
- 一部の請求済み注文は、マーチャントがBraintree アカウントで同じ通貨の 2 つの異なるマーチャントアカウント ID を持っているデプロイメントで、正しいアカウントで期待どおりにキャプチャされるようになりました。
- Magento Open Sourceが支払った注文に対して Enable Vault for Card Payments が有効な場合に、Braintreeが 2 番目の部分請求書を作成するとエラーがスローされなくなりました。 以前は、マーチャントが 2 つ目の請求書を作成しようとすると、Magento Open Sourceが
Your payment could not be taken. Please try again or use a different payment method. Payment method token is invalidというエラーをスローしていました。
- 買い物客が請求先住所を更新した際に、チェックアウトワークフローで「Braintree Vault の支払い方法」オプションが自動的に選択解除されなくなりました。 以前は、買い物客が「My billing and shipping address are the same」ボタンの選択を解除すると、支払い方法の選択が解除されていました。
- Adobe Commerce 2.4.5-p2 からアップグレードした後に、Braintreeを通じて PayPal を使用してチェックアウトする際の問題を修正しました。 GitHub-37242
- Googleの支払いモーダルポップアップの配送先住所フィールドの住所で、電話番号が期待どおりにレンダリングされるようになりました。 以前は、電話番号が欠落していました。
- Braintreeの応答に
threeDSecureInfo/eciFlagの空の値が含まれる場合、注文がBraintreeで正常に行われるようになりました。 以前は、この値が空のときにチェックアウト中に PHP エラーが発生していました。
- ミニ買い物かごからGoogle Pay でチェックアウトする際に、買い物客が注文レビューページでクーポンを適用しても、Magento Open Sourceがエラーをスローしなくなりました。 以前は、買い物客は 404 ページにリダイレクトされていました。
- 買い物客は、Braintree Payments と、非表示の ReCAPTCHA v2 または v3 を使用したMagento Open Source 2.4.6 を使用して、チェックアウトを完了できるようになりました。 GitHub-37241
- 買い物客は、最初に必要なオプションを選択しないと、「PayPal」ボタンをクリックして設定可能な製品を購入できなくなりました。 以前は、買い物客が「PayPal」ボタンをクリックすると、その後エラーが発生して製品ページにリダイレクトされていました。
- PayPal ボタンが、買い物かごページとミニ買い物かごページに期待どおりに表示されるようになりました。 以前は、このボタンは買い物かごページには表示されず、ミニ買い物かごページでは重複していました。
パフォーマンス
- Sales/Orders ページの一括アクションドロップダウンメニューで複数回クリックしても、複数の POST リクエストが生成されなくなりました。 GitHub-37997
- ページの Cache-Control ヘッダーに
200が含まれていない限り、買い物客が 301 リダイレクトをトリガーするページに移動すると、404またはprivateの応答のみがキャッシュされます。 以前は、Cache-Control ヘッダーにprivateを含む HTTP ステータス 200 がキャッシュされており、HTTP ステータス 301 は、Cache-Control ヘッダーにprivateが含まれていない限りキャッシュされていました。 GitHub-36492
- 未使用の
Magento\Catalog\Controller\Adminhtml\Product\Initialization\HelperをMagento\Catalog\Model\ProductRepositoryから削除しました。 以前は、ProductRepositoryはこのヘルパー(Adminhtmlコントローラー)を読み込んでいました。 GitHub-37864
- バンドルされた製品に多数のオプションが追加された場合のページ読み込み速度のパフォーマンスが向上しました。 GitHub-29409
- 「Products in Category」タブからカテゴリに製品を割り当てるプロセスが最適化されました。 製品がグリッドに完全に読み込まれるまで、「Assign」タブの「Remove」ボタンと「Add Product by SKU」ボタンが無効になります。 以前は、管理者ユーザーは、数百万の登録済み製品が含まれるカタログの SKU で製品を追加できませんでした。
- 多くのカスタム製品属性で実行する場合の、
addProductToCartミューテーションのパフォーマンスが向上しました。 以前は、このミューテーションが多くの製品属性(約 1000)で実行された場合、Magento Open Sourceはすべての製品属性を読み込もうとしました。
- 買い物かごルールで使用される製品属性を読み込む際のパフォーマンスの問題が解決されました。 アクティブな買い物かごルールの製品属性のみが読み込まれるようになりました。
bin/magento setup:perf:generate-fixtures setup/performance-toolkit/profiles/ee/small.xmlコマンドを複数回実行すると、正常に実行されるようになりました。 以前は、複数回実行すると、次のエラーがスローされていました。Coupon with the same code already exists
プロモーション
- Fixed amount discount for whole cart 価ルールの効果は、Apply to shipping amount 価ルールに適用されると、製品と出荷金額の間で期待どおりに比例配分されるようになりました。 以前は、割引計算が正しくありませんでした。
- これで、Discard Subsequent Rules 設定が期待どおりに適用されます。 この設定が有効になっている場合、優先度の低い他のルールは別の製品にのみ適用できます。 GitHub-35707
reCAPTCHA
- 非表示の reCAPTCHA v3 が、「チェックアウトページの Sign in」ボタンで期待どおりに動作するようになりました。 以前は、買い物客がログインできず、CommerceがJavaScript エラーをスローしていました。
- チェックアウトワークフローのGoogle reCAPTCHA が、小切手、マネーオーダー、カスタム支払い方法で期待どおりに機能するようになりました。
- Adobe Commerce ReCAPTCHA チェックボックスが読み込まれる前にGoogle フォームを送信することができなくなりました。
- reCAPTCHA ウィジェットが、支払いページの「Place Order」ボタンの前に表示されるようになりました。 以前は、ウィジェットはページの上部に表示されていました。
レポート
- デフォルト以外の通貨を使用するストアで注文が生成された場合、注文レポート(REPORTS > Sales > Orders)に正しい注文値が含まれるようになりました。 以前は、このレポートに誤った値が含まれていました。 GitHub-36742
- 販売注文レポートフォームの誤解を招く情報が、わかりやすいように改訂されました。
- 管理者ユーザーは、放棄された買い物かごレポート ページから、
+(プラス)記号を含むメールを持つレコードを検索できるようになりました。 GitHub-36560
検索 search-heading
- ヘッダーのミニ検索フロントエンドのオートコンプリート検索候補が、期待どおりに機能するようになりました。 以前は、この機能が有効な場合、オートコンプリートによってこのフィールドに値が入力されることはありませんでした。 GitHub-37557
- 管理者の検索バーから実行されるクエリのパフォーマンスが、インデクサーの追加により向上しました。 以前は、
search_queryテーブルが大きいほど、クエリの完了に時間がかかりました。
- トルコ語の文字を含む名前の場合、製品を名前でアルファベット順に並べ替えても正しく機能するようになりました。
- Use in Search Results Layered Navigation 製品属性プロパティは、Use in Search の設定が Yes に設定されている場合にのみ表示されるようになりました。
- 詳細検索で一緒に適用した場合、詳細検索価格と SKU フィルターが正しく機能するようになりました。 GitHub-37581
- 空の検索フィールドに対する検索は実行されなくなりました。 これにより、
search_queryテーブルのサイズが小さくなります。 以前は、空の検索フィールドに対する誤ったクエリやクエリによって大きなデータセットが返され、search_queryテーブルのサイズが大きくなり、/tmpに関する問題が発生していました。
- カタログエントリをドロップダウンカスタム属性で並べ替える場合、ストアフロントフィルターが期待どおりに機能するようになりました。
- 検索結果に、属性の検索重み付けに基づいて関連する結果が期待どおりに表示されるようになりました。
- Admin
Search Weight/Storefront Properties/Stores の Attributes 属性の Product 入力フィールドの下にある情報テキストに、使用可能な値が記述されるようになりました。 GitHub-36646
送料
- 動的価格属性が無効な場合にバンドル製品が買い物かごに追加された場合、買い物かご価格ルールが期待どおりに機能するようになりました。 動的属性が有効であるか無効であるかに関わらず、送料無料および適切なテーブルレートが適用されます。 以前は、送料無料は期待どおりに適用されませんでした。
- Magento Open Sourceは、注文の部分出荷を作成した後、期待どおりに新しい出荷ページに移行するようになりました。 以前は、一部の出荷を作成した後は、Magento Open Sourceは、注文の残りの製品の出荷完了ページを作成していませんでした。 GitHub-38063
- 注文を複数の住所に配送するための合計金額が正しく計算されるようになりました。 以前は、見積に複数の配送先住所が含まれている場合、回収担当者の合計は、期待どおりに
$quote->getShippingAddress()で渡すのではなく、$shippingAssignmentで指定された住所の配送額を更新していました。 GitHub-37283
- 管理者ユーザーがユーザーとしてログイン機能を使用した場合、複数の配送先住所を含むチェックアウト中にMagento Open Sourceが例外をスローしなくなりました。
- 出荷ラベルの作成後に製品をパッケージに追加すると、製品がパッケージを作成ページの製品グリッドに正しくリストされるようになりました。
cartクエリは、個別の配送割引を、一意の割引ラベルを持つ個別の配送割引として返すようになりました。 新しいapplied_to割引プロパティは、買い物かご項目に適用される割引の違いをサポートします。 以前は、すべての配送割引が 1 つのハードコードされた Shipping Discount 値に結合されていました。
- 管理者ユーザーが再注文を作成すると、管理者ユーザーが Reorder 定ボタン(管理者 Sales ール/Orders/View)をクリックすると、最初の注文の請求アドレスと出荷アドレスが関連するフィールドに自動的に入力されます。 買い物客のアドレス帳に同じアドレスが保存されている場合、再注文には常にこれらのアドレスの更新バージョンが組み込まれます。 以前は、更新後のデータが出荷先住所フィールドに事前入力されていましたが、請求先住所フィールドには入力されていませんでした。
- Shipping Policy が有効になっており、カスタム配送ポリシーが使用可能な場合、Apply custom Shipping Policy のテキストボックスが管理ストア表示スコープに表示されるようになりました。 GitHub-36425
cartクエリは、selected_shipping_methodの通信事業者コードとメソッドコードの 1 つに一致するavailable_shipping_methods値を返すようになりました。 以前は、選択した配送方法の 1 つにアンダースコアが含まれていると、これらの配送業者/メソッド コードが一致しませんでした。 GitHub-36606
- 通り配列の 2 番目の値が null の場合に、
setShippingAddressesOnCartのミューテーションがエラーをスローしなくなりました。 以前は、この例外がスローされていました:The address failed to save. Verify the address and try again。 GitHub-35160
サイトマップ
- XML サイトマップがマルチストーリーデプロイメントで期待どおりに機能するようになりました。 以前は、サイトマップには、各ストアに割り当てられたデフォルトページが含まれていませんでした。 GitHub-35001
- Web サイトの作成とシングルストアモードが有効な場合に、マーチャントが製品を
id != 1成および保存できるようになりました。 以前は、保存アクションは次のメッセージで失敗していました:SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails。 GitHub-35009
税
- 税金が設定され、FPT が有効化されている場合、請求書に正しい小計が表示されるようになりました。
- 税を含めるように設定されている場合、Regular Price 値を持つ商品に対してカスタムオプションを選択すると、Magento Open Sourceに Special Price 値の正しい値が表示され Price Display Settings ようになりました。
- 設定で指定されたチェックアウトワークフローの配送価格に、税金が期待どおりに含まれるようになりました。
cartのクエリapplied_taxes応答値に、期待どおりに個々の税務処理基準がすべて含まれるようになりました。 以前は、複数の税務処理基準が設定されている場合に合計税額が返されていました。
- 税務処理基準の作成時に Additional Settings のセクションの「折りたたみ/展開」アイコンが期待どおりに動作するようになりました。 以前は、展開アイコンのみが機能していました。 GitHub-37922
- 「税務処理基準編集」ページから「国」および「地域」の税率の値を期待どおりに編集できるようになりました。 以前は、そのページから行った編集は保存されませんでした。
- 発送方法が更新されると、買い物かごの見積もりエリアの税額が期待どおりに更新されるようになりました。 以前は、買い物客がチェックアウト中に国を変更した後に税率が更新されていませんでした。
- ストア表示スコープで既存の設定可能な製品の新しいバリエーションを作成する際、新しく作成された単純な製品の
tax class値が親の製品の値に設定されるようになりました。 以前は、この値は「なし」に設定されていました。 その結果、カートに入っている商品には税金が加算されず、お客様には過少納税が課されていました。 GitHub-37180
テスト
- メールフィールドが早い段階で完了することが原因で発生する障害を排除するように、
AdminCreateOrderWithVirtualProductFromDefaultSourceWithBackordersテストを改善しました。
- 信頼性
StorefrontVerifyProductAfterPartialReindexOnSeveralWebsitesTest向上させるためにリファクタリングが行われました。 GitHub-38359
- 検索で使用する属性を明示的に設定する追加の手順を導入することで、
AdminSimpleProductwithTextandVisualSwatchテストを修正しました。
SortbyTest単体テストの誤字脱字を修正。 GitHub-37792
- 単体テストで、存在しないクラスへの参照を削除しました。 GitHub-37636
- メールフィールドが早い段階で完了することが原因で発生する障害を排除するように、
AdminCreateOrderWithVirtualProductFromDefaultSourceWithBackordersテストを改善しました。
- クエリ応答
Magento\GraphQl\Catalog\ProductSearchTest::testFilterProductsBySingleCategoryIdランダムなカテゴリ順序を処理するためのリファクタリングproductsれたテスト。
\Magento\Test\Integrity\Di\CompilerTest::testConstructorIntegrityテストでは、ComponentRegistrar()によって登録されたモジュールのすべての PHP クラスを検証するようになりました。
TableNameSniffの大規模なアレイでのパフォーマンスの問題は解決されました。
CollectionTest::testGetDateRangeFirstPart()では、夏時間を考慮するようになりました。
UI フレームワーク
crossorigin属性がlinkTypes要素用にHEADに追加されました。GitHub-32509
- 画像アップローダが、動的行で期待どおりに動作するようになりました。 多国籍配列として送信する際に、画像が正しくアップロードされるようになりました。 GitHub-37957
- ファイルのアップロードスタイルが Luma テーマで複製されなくなりました。 GitHub-32373
- ストリートフィールドの顧客アカウント編集住所フォームのストリートフィールドが正しく保存されるようになりました。 これらのフィールドは、フォーム内の指定されたキーで正しく並べ替えられるようになりました。 GitHub-37973
- 製品詳細ページの累積レイアウトシフト(CLS)値が改善されました。 (この指標は、ページレイアウトの視覚的な安定性を定量化します)。GitHub-35410
- テンプレートのレンダリング中に発生するエラーのメッセージを改善しました。 Magento Open Sourceに情報メッセージが表示されるようになりました。 以前は、PHP エラーが発生するとMagento Open SourceでHTML リークが表示されていました。
- 削除された画像とその後アップロードされた画像で、カスタム顧客属性(タイプ
File attached)が正しく機能するようになりました。 以前は、カスタム属性をアップロード、削除してから再度アップロードしても、ストアフロントから保存できませんでした。
- カレンダーテンプレートファイルの構文エラーを修正しました。 GitHub-37725
- 管理者ユーザーは、シングルストアモードが有効な場合にストアフロントのロゴを変更できるようになりました。 以前は、Magento Open Sourceにはデフォルトのフォールバックロゴが表示されていました。 GitHub-35952
- Mixin 設定値が空ではなくなり、読み込み位置に関係なく jQuery Mixin が機能するようになりました。 以前は、jQuery mixin は、ブラウザーをまたいで一貫して読み込まれませんでした。
- ログインページの「Show Password」チェックボックスがアクティブな場合、パスワードが期待どおりに表示されるようになりました。
- Magento Open Sourceに、特別価格の固定バンドル製品の正しい価格が表示されるようになりました。
- ストアフロントのフッターテンプレートファイルの GitHub の問題リストページへのリンクを更新しました。 GitHub-37214
- 最近表示された項目ウィジェットに、グループ化された製品価格で正しい税額が表示されるようになりました。 GitHub-35881
- 管理者ユーザーは、シンプルな製品用に作成されたカスタマイズ可能なオプションを期待どおりにドラッグ&ドロップできるようになりました。 GitHub-36051
- 製品ドロップダウン属性タイプの順序が、設定可能な製品ページの画像の順序と一致するようになりました。 GitHub-37285
- システムメッセージの読み込みが高速化されました。 表示されているメッセージのみが読み込まれます。 以前は、すべてのメッセージがデータベースから読み込まれていたため、時間がかかっていました。
- レイアウト XML を使用して
remove=trueを設定することでパンくずノードを削除しても、カテゴリページのページタイトルが削除されなくなりました。 以前はこの方法でパンくずリストを削除すると、カテゴリページからページタイトルが削除されていました。
- 複数選択の顧客属性が含まれている場合、顧客登録フォームが期待どおりに読み込まれるようになりました。 以前は、Magento Open Sourceは次の例外をスローしていました:
[2023-03-05T05:57:40.032602+00:00] report.CRITICAL: Exception: Deprecated Functionality: explode(): Passing null to parameter #2 ($string) of type string is deprecated in /magento2ee/app/code/Magento/CustomAttributeManagement/Block/Form/Renderer/Multiselect.php on line 53 in /lib/internal/Magento/Framework/App/ErrorHandler.php:62。 GitHub-37189
- 一重引用符を含むようこそメッセージが、コンソールエラーを含まずにストアフロントで正しくレンダリングされるようになりました。 以前は、ウェルカムメッセージに一重引用符が含まれている場合、ストアフロントレンダリング中にウェルカムメッセージが読み込まれませんでした。 Magento Open Sourceには、コンソールエラーも表示されました。
- 管理注文ページでコメント履歴と返品間のビューをすばやく変更しようとすると、Magento Open Sourceがエラーをスローしなくなりました。 以前は、Magento Open Sourceには「
A technical problem with the server created an error」という一般的なエラーが表示されていました。
- 1 つの web サイトに制限された権限を持つ管理者ユーザーが、
all stores view範囲に設定された web サイト固有の製品属性を更新できるようになりました。
- 拡大鏡ウィジェットが製品ページで期待どおりに読み込まれるようになりました。
- 複数行のカスタマイズ可能なオプションが、請求書、発送、クレジットメモのPDFドキュメントで適切にレンダリングされるようになりました。 以前は、複数行テキストの前に予期しない改ページが表示され、テキストがページを超えるとテキストが切り捨てられました。
- 管理者ユーザーは、ストア ID が web サイト ID と一致しない別の web サイト用にその顧客が作成された場合、管理者から新しい顧客アドレスを追加できるようになりました。 以前は、Magento Open Sourceには「
Something went wrong」というポップアップメッセージが表示されていました。 GitHub-36582
- 注文の詳細ページでのコメントの送信に関連するエラーメッセージが、より詳しく表示されるようになりました。 以前は、買い物客が注文ステータスを変更したり、コメント領域にテキストを入力したりせずに Submit comment をクリックすると、Magento Open Sourceに「
The comment is missing. Enter and try again」というメッセージが表示されていました。
- 1 つのフィールドで日付を選択した後、管理 Marketing / Cart Price Rules の日付範囲フィールドで、カレンダーアイコンが期待どおりに表示されるようになりました。 以前は、あるフィールドで日付を選択すると、他のフィールドにカレンダーアイコンが表示されなくなり、Magento Open Sourceにプレースホルダーテキストが表示されていました。 GitHub-36499
- 複数選択フィールドを含む顧客登録フォームが正常に読み込まれるようになりました。 以前は、このフォームに複数選択フィールドが含まれている場合に読み込まれず、次のエラーがトリガーされていました:
report.CRITICAL: Exception: Deprecated Functionality: explode(): Passing null to parameter #2 ($string) of type string is deprecated in /magento2ee/app/code/Magento/CustomAttributeManagement/Block/Form/Renderer/Multiselect.php on line 53 in /lib/internal/Magento/Framework/App/ErrorHandler.php:62。 GitHub-37189
- 製品ギャラリーのフルスクリーンモードでビデオサムネールをクリックすると、ビデオが期待どおりに表示されるようになりました。 以前は、ビデオが表示されず、ブラウザーコンソールにJavaScript エラーが表示されていました。 GitHub-36456
- 著作権行に変数を追加しました。この変数は毎年自動的に更新されます。 GitHub-36776
- 製品ページの画像スライダーが、モバイル表示で期待どおりに動作するようになりました。 以前は、最初の画像のみが正常に表示されていました。 GitHub-37232
URL の書き換え
- マルチストアデプロイメントのストアレベルの表示設定に基づいて、URL の書き換えが生成されるようになりました。 以前は、デフォルトのストア範囲で製品の表示が「非表示 に設定されている場合、デフォルト以外のストアの URL の書き換えは生成されませんでした。
Category::getUrl()は、301 リダイレクトを取得しなくなりました。 GitHub-38152
- カスタムストアで URL の書き換えが見つからない場合、Magento Open Sourceで、ルートカテゴリの商品 URL の書き換えや、マルチストア設定で Not Visible Individually に設定された商品 URL の書き換えが生成されなくなりました。
- カテゴリ URL キープロパティが更新された後、正規 URL タグが、期待どおりに変更を反映するようになりました。 以前は、古いカテゴリ URL が使用されていましたが、これにより、新しい URL へのリダイレクトがすぐにトリガーされました。
- カテゴリの製品 URL の書き換えが、製品がカテゴリに追加された際に、すべてのストアビューで期待どおりに生成されるようになりました。 GitHub-32910
- カテゴリ/商品 URL の書き換えを生成 が有効になっている場合に、商品 URL の 301/302 リダイレクトを作成しようとすると、Magento Open Sourceがエラーをスローしなくなりました。 製品を作成してカテゴリに割り当てると、URL の自動書き換えが作成されます。1 つはダイレクト URL 用で、もう 1 つはカテゴリパスを介した製品用です。 新しい製品 URL の書き換えが作成されると、製品、カテゴリおよびストア間の相関関係がチェックされます。 このチェックは、相関エンティティプロパティ(カテゴリおよび製品)に基づいています。 以前は、このチェックは、既存の URL の書き換えに対して実行されていました。
- 新しいカテゴリを CSV ファイルから読み込む際に、すべてのストアビューでカテゴリ URL の書き換えが生成されるようになりました。
- 製品 URL サフィックスとカテゴリ URL サフィックスの設定が
url_rewriteテーブルのサフィックスと一致するようになりました。 以前は、URL サフィックス設定を更新する際の競合状態が発生し、設定された URL サフィックスとurl_rewriteテーブルが一致しませんでした。
- Magento Open Sourceは、カテゴリ URL の書き換えを作成する際、すべてのレベルでカテゴリツリーをレンダリングするようになりました。 以前は、カテゴリの最初の 3 つのレベルのみが表示されていました。 GitHub-36973
- カテゴリ URL の書き換えが、新しいカテゴリの読み込み時に CSV ファイルに表示されるようになりました。
- URL の書き換えのないマルチストア CMS ページが、期待どおりに転送されるようになりました。 以前は、URL の書き換えのない複数ストアのCMS ページがリクエストされ、ストアのホームページにリダイレクトされていましたが、元のCMS ページはリダイレクトされませんでした。
Web API フレームワーク
Integration not secureフィールドと System フィールドが空の場合、管理 Extensions/Integrations/Callback URL でMagento Open Sourceに Identity link URL 警告が表示されなくなりました。 GitHub-36407
taxes、itemized_taxes、additional_itemized_taxesの拡張属性をに追加しました。Magento\Sales\Api\Data\OrderInterface。 これらの属性を使用すると、適用された税金を注文 REST 呼び出しで保存できます。
- Tier Prices REST API で小数がサポートされるようになりました。 以前は、この API は、Use Decimal Quantity 設定が有効な場合でも小数点以下の数量を許可していませんでした。
- 保留中の注文のステータスにコメントを追加しようとすると、REST
V1/orders/{id}/commentsエンドポイントが注文のステータスを変更しなくなりました。 これで、有益なエラーが発生するようになりました。 以前は、このエンドポイントは、コメントを追加する際に注文ステータスを変更していました。
- REST API
GETとPOST V1/products/attributesエンドポイントは、is_filterableオプションのFilterable(with results)オプションとFilterable(no results)オプションの両方で、Use in Layered Navigation 属性に同じ値を返さなくなりました。 以前は、is_filterable属性プロパティの型がBooleanであったため、このエンドポイントは同じ値を返していました。そのため、このプロパティをFilterable(no results)に設定することはできませんでした。 GitHub-37979
- 見つからない
media_gallery_entriesフィールドが RESTV1/configurable-products/sku/childrenエンドポイントに追加されました。 以前は、この関数には、media_gallery_entriesータの保存と表示に必要なコードがありませんでした。 GitHub-37607
- REST
V1/carts/mine/estimate-shipping-methodsメソッドは、ペイロードフィールドデータのすべてのレベルを検証し、無効なデータに対して 400 HTTP コードを返すようになりました。 以前は、API ペイロードの最初のレベルのみが検証され、ペイロードの検証されていないレベルで無効なデータが返された場合、Magento Open Sourceは 500 ステータスコードを返しました。
- 階層価格と様々な属性セットを使用して製品を更新する非同期の一括 REST API 操作が正常に完了しました。 以前は、異なる属性セットを持つ商品は、この方法で更新できませんでしたが、Magento Open Sourceに「
The product was unable to be saved. Please try again」というエラーが表示されていました。
- 階層価格の作成時に無効な顧客グループ名が使用された場合、
POST /V1/products/tier-pricesエンドポイントが返すエラーメッセージがより詳細になりました。 以前は、Magento Open SourceはNotice: Undefined index: XXXXX in ~/public_html/vendor/magento/module-catalog/Model/Product/Price/Validation/TierPriceValidator.php on line 474"のようなエラーを返していました。 GitHub-36431
- 認証済みの非同期一括 API リクエストを実行して、デフォルト以外のグループ ID を持つ顧客を作成できるようになりました。 以前は、これらのリクエストにより、グループ ID がデフォルト値にリセットされていました。
- Bulk API を使用して作成された顧客は、割り当てられた web サイトで設定された言語で顧客登録メールを受け取るようになりました。 以前は、すべてのメールは、顧客が割り当てられている web サイトのロケールではなく、デフォルトのロケールに送信されていました。
POST V1/guest-cartsが無効の場合、Allow Guest Checkout 呼び出しではゲスト注文が送信されなくなりました。
- Magento Open Sourceは、product media API 応答で
content属性(base64 画像コード)GET V1/products/sku/media正常に返すようになりました。content属性は、以前は応答に表示されていませんでした。
必要システム構成
当社の技術スタックは、PHP と MySQL をベースに構築されています。 詳しくは、 システム要件 を参照してください。
インストールとアップグレードの手順
Composer を使用してMagento Open Source 2.4.7 をインストールできます。