Bir Magento ürün yapılandırılabilir ürünün aa çocuk olup olmadığını kontrol etme

3 Cevap php

Ben Ürünleri listesini kapmak için aşağıdaki kodu var

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

$collection->addAttributeToSelect('name')
     ->addAttributeToFilter("category_ids", array('finset'=>$this->category_id));

foreach($collection as $product) {
   echo $product->getName();
}

Benim soru nasıl 'basit' ama bir ebeveyn 'yapılandırılabilir' ürüne ait ürünler echo yapamıyoruz, olduğunu. (Bu "Kırmızı Gömlekli" ait örneğin "Kırmızı Gömlek Medium" görünmüyor)

Ben bu dernek 'catalog_product_super_link' yaşadığını çalıştı ama ben sadece sadece Magento ile başladı ve maalesef filtreleme yapmak için nasıl bilmiyorum :)

Beyler şerefe,

Chris.

3 Cevap

Ben koleksiyonuna bu durumu eklemek için doğrudan bir yol, ben de böyle bir çözüm ilgi duyarım bilmiyorum. Ama her zaman her ürün için döngü içinde kontrol edebilirsiniz:

if (empty(Mage::getModel('catalog/product_type_configurable')->getParentIdsByChild($product->getId()))
    echo $product->getName();

Ürün sınıfına isConfigurable adında bir işlevi var.

Bu size yardımcı olabilir.

$product->isConfigurable(); 
// if its the parent object it'll be true, if its the child it'll be false. 

Hızlı yolu yapılandırılabilir ürünleri ile bağlantılı basit ürünler genellikle bu ayarlanır beri ürünün görünürlük, "Bireysel Görünür değil" olarak ayarlanmış olup olmadığını kontrol etmek olabilir. Ne yazık ki kesin sözdizimi bilmiyorum ama umarım bir başkası kim yapar uymak için istekli!