ホームページ >バックエンド開発 >PHPチュートリアル >記事の内容に適した質問ベースのタイトルをいくつか示します。 * Magento Checkout で動的な製品属性を作成するにはどうすればよいですか? * ユーザー入力ベースの製品属性を Magento 注文に追加: A Co
Magento - ユーザー入力に基づく見積/注文商品アイテム属性
概要
これこの問題は、チェックアウト プロセス中にユーザーが製品に動的に追加できる、カスタマイズされた製品属性を作成する必要性に対処していますが、製品編集ページや属性セットには表示されません。この属性は、見積/注文品目とともに取得、検証、保存され、請求書、注文、その他の関連文書に表示される必要があります。
見積品目操作のイベント オブザーバ
最初のステップは、見積項目のカスタム属性を取得して保存することです。これは、catalog_product_load_after イベントのイベント オブザーバーを使用して実現できます。オブザーバーは、extra_options パラメーターから POST されたデータを取得し、それを Additional_options という名前のカスタム オプションとして製品モデルに追加できます。
追加注文オプション項目
Magento は追加オプションを製品から見積項目に自動的に転送します。チェックアウト後もオプションが保持されるようにするために、別のイベント オブザーバーを使用して、sales_convert_quote_item_to_order_item イベント中にオプションを見積品目から注文品目に移動できます。
再注文のサポート
並べ替え時にカスタム属性を保持する必要がある場合は、checkout_cart_product_add_after イベント用に追加のイベント オブザーバーを作成できます。このオブザーバーは、再注文プロセス中に見積品目にカスタム オプションを追加できます。
注文とレポートに表示
追加のオプションは、請求書、注文、 app/design/frontend/base/default/sales/order/view.phtml などの適切なテンプレートをオーバーライドして、その他のドキュメントを作成します。これらのテンプレートにカスタム ロジックを追加して、追加オプションを取得して表示できます。
注文コレクションのフィルタリング
カスタム属性値に基づいて注文コレクションをフィルタリングするには、カスタム リソースモデルを作成して、sales/order リソースを拡張できます。このリソース モデルは、_loadOrders メソッドをオーバーライドすることで、特定のカスタム属性値を持つ注文をフェッチするために使用できます。
以上が記事の内容に適した質問ベースのタイトルをいくつか示します。 * Magento Checkout で動的な製品属性を作成するにはどうすればよいですか? * ユーザー入力ベースの製品属性を Magento 注文に追加: A Coの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。