古い開発者が担当していたMagentoプロジェクトを継承しました。Magentoの経験は非常に限られているので、製品コレクションとcatalog/product
モデルがどのように機能しているかを理解したいと思います。
具体的には、コレクションと製品オブジェクトがなぜそれほど巨大なのか疑問に思っていますか?
私はこのようなコードを持っています:
<?php $_productCollection = $this->getLoadedProductCollection(); ?>
<?php foreach ($_productCollection as $_product): ?>
<?php $_product = Mage::getModel( 'catalog/product' )->load( $_product->getId() ); ?>
<?php print $this->getLayout()->createBlock('mymodule_name/category_products_item')->setProduct($_product)->toHtml() ?>
<?php endforeach ?>
大量のデータを取得する場合、print_r($_productCollection)
または取得する場合、本当に必要なのはいくつかの製品属性(ID、名前、価格、画像のURLなど)だけです。print_r($_product)
私はカスタムリレーショナルデータベースプラットフォームに慣れており、製品を使用する必要がある場合は、次のような非常に単純なことを実行しますSELECT id,name,price FROM products;
。Magentoでこれをどのように達成するかはまったくわかりません。カスタムモデルなどを作成しますか?
だから誰でも教えてください:
1)上記のオブジェクトはなぜそれほど巨大なのですか?
2)(上記のように)いくつかの製品属性のみが必要な場合、オブジェクトをそれらの属性のみに制限してサイズを縮小する方法はありますか?
3)このようにオブジェクトを使用することで、パフォーマンスやメモリに影響がありますか?
どうもありがとう!