1

カスタムオプションがあるすべての製品を取得したい。カスタムオプションを持つ製品のみを取得するには、どのフィルターを使用すればよいですか?

$collction = Mage::getModel('catalog/product')->getCollection();
4

1 に答える 1

3

カスタムオプションを使用して製品を取得するための magento の直接フィルタリングはありません。以下のコードを使用します。

$collection = Mage::getModel('catalog/product')
            ->getCollection();
$collection->getSelect()
    ->join(
        array(
            'opt_table' => new Zend_Db_Expr('(SELECT DISTINCT(product_id) as `opt_product_id` FROM catalog_product_option)')
        ),
        'opt_product_id = entity_id',
        'opt_product_id'
);


foreach($collection as $product) {
    //Load the product if required
}
于 2013-10-03T08:49:05.233 に答える