質問

新しいタイプの製品を開発中です。私はテストに基づいて http://www.solvemagento.com/creating-a-custom-product-type-in​​-magento/. 。会社名に合わせてすべてのコードの名前を変更しました。

カスタム製品タイプは Magento に表示されますが、「新しい注文を作成する」ときに (バックエンド経由で) 注文に追加できません。

たとえば、私の新製品の type_id が「custom_product」であるとします。

データベース内のcatalog_product_entityテーブルを調べたところ、新製品のいずれかのtype_idフィールドをvirtualやsimpleなどの組み込みタイプの1つに変更すると、「新しい注文の作成」の製品リストに表示されます。

これは、mysql クエリのログをオンにすることで確認できます。実行されるクエリの例を次に示します。

SELECT `e`.* FROM `catalog_product_entity` AS `e`
  INNER JOIN `catalog_product_website` AS `product_website`
  ON product_website.product_id = e.entity_id AND product_website.website_id = '1' 
  WHERE (((`e`.`type_id` = 'simple') OR (`e`.`type_id` = 'virtual') OR
        (`e`.`type_id` = 'configurable') OR (`e`.`type_id` = 'grouped') OR 
        (`e`.`type_id` = 'bundle') OR (`e`.`type_id` = 'downloadable')))
  ORDER BY `e`.`entity_id` DESC LIMIT 20

フィルターに含まれる type_id を指定するにはどうすればよいですか?これはXMLで書かれているのでしょうか?クラスをオーバーライドしますか?バックエンドで設定可能ですか?

前もって感謝します。

編集 ----- 答えを見つけました ----- しかし、答えることは許可されていません。

これをconfig.xmlに追加します

config.xml に追加する必要があります

<adminhtml>
    <sales>
        <order>
            <create>
                <available_product_types>
                    <affiliate/>
                </available_product_types>
            </create>
        </order>
    </sales>
</adminhtml>
役に立ちましたか?

解決

OP ごとに、製品タイプ ハンドルを構成 XML に追加する必要があります。

config.xml に追加する必要があります

<adminhtml>
    <sales>
        <order>
            <create>
                <available_product_types>
                    <affiliate/>
                </available_product_types>
            </create>
        </order>
    </sales>
</adminhtml>
ライセンス: CC-BY-SA帰属
所属していません magento.stackexchange
scroll top