ホームページ >バックエンド開発 >PHPチュートリアル >Magento でユーザー入力に基づいて構成可能な製品属性を構築するにはどうすればよいですか?

Magento でユーザー入力に基づいて構成可能な製品属性を構築するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-10-28 03:05:30550ブラウズ

 How to Build a Configurable Product Attribute Based on User Input in Magento?

ユーザー入力に基づいて構成可能な製品属性

概要

Magento では、機能を拡張する製品属性を作成できますシステム内の製品の数。カスタム属性は製品のカスタマイズをより詳細に制御できますが、製品編集ページに表示することもできます。この記事では、異なる動作をする属性を作成するためのソリューションを紹介します。属性は商品には保存されず、商品編集ページには表示されず、顧客が構成した後に注文/見積項目に表示されます。

実装

1.製品ページへの入力フィールドの追加

  • 必要な HTML を生成する .phtml テンプレートを作成します。
  • app/design/frontend/base/default/catalog をオーバーライドします。 /product/view/type/default.phtml テンプレートを使用して、テンプレートを含めます。
  • 経由でユーザー入力をキャプチャします。要素。

2.入力の検証と保存

  • イベント オブザーバーを使用して、catalog_product_load_after イベントをリッスンします。
  • $product->getCustomOption('info_buyRequest') を使用して入力値を取得します。 .
  • sales_quote_item_qty_set_after イベント オブザーバーを使用して値を検証し、保存します。

3.注文/見積/レポートでの値の表示

  • 入力値をシリアル化し、製品および見積/注文項目の追加オプション カスタム オプションとして保存します。
  • カスタム フォーマッタまたは注文/見積ビュー テンプレートをオーバーライドして属性値を表示します。

4.入力値による注文のフィルター

  • フィルターするには、Mage::getResourceModel('sales/order_item_collection')->addAttributeToFilter('Additional_options["my_attribute"]', $value) 構文を使用します。注文。

追加の考慮事項

  • 翻訳: 見積書/注文品目ロード オブザーバーを使用して、翻訳された属性ラベルまたは値を設定します。
  • 再注文サポート: 再注文中に属性値が見積品目から注文品目に確実にコピーされるようにします (checkout_cart_product_add_after イベント オブザーバーを使用)。

以上がMagento でユーザー入力に基づいて構成可能な製品属性を構築するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。