2012-08-03 3 views
6

Dün bir ürün koleksiyonu çekmek için kod yazdım. Bu kod işe yaradı, ancak bugün, kod doe işe yaramaz, hiçbir şey değişmedi, neden işe yaramayacağını anlayamıyorum.Magento koleksiyonu özelliği seçmiyor

Bu ben içerdiği ürünlerin listesini görmek mümkün oldu Dün

$collection = Mage::getModel('catalog/product')->getCollection() 
->addAttributeToSelect('MPN') 
->addAttributeToSelect('JAN') 
->addAttributeToSelect('UPC') 
->addFieldToFilter(array(
    array('attribute'=>'type_id','eq'=>'simple') 
)) 
->setPage(1,10); 
$collection->load(); 
foreach($collection as $item) 
{ 

echo print_r($item->getdata()); 
} 

kodlu budur benim MPN en, JAN en ve UPC adlı (bu özel arka uç özellikleridir). Bugün hiç yüklenmiyorlar. Cehennem kadar garip, belki de koleksiyonlarımın benim anlayışım düşündüğüm kadar iyi değil.

Herhangi bir yardım çok takdir edilecektir.


DÜZENLEME: magento önbelleği Yenileniyor

şeyi tekrar çalışır hale getirmek gibiydi. Bu, koleksiyonun bazen önbelleği kullanması anlamına geliyor mu, önbelleği kullanmamak için kodu yazabilmemin bir yolu var mı?

cevap

12

Koleksiyonunuzu nerede kullanıyorsunuz bağlıdır. Ön kısımda toplama kullanılırsa ve Düz mod açılırsa, Düz dizine dahil olmadıklarından, özellikleriniz kullanılamaz. Düz endeksi içine dahil etmek

bunu düz modda satışa sunulacak Bu durumda modül

<config> 
    <frontend> 
     <product> 
       <collection> 
        <attributes> 
         <MPN /> 
         <JAN /> 
         <UPC /> 
        </attributes> 
       </collection> 
      </product> 
    </frontend> 
</config> 

ait Config.xml dosyasına aşağıdaki XML yapılandırması eklemek gerekir. Ayrıca, bu XML düğümüne nitelikler ekleyerek, nitelikleriniz de ön taraftaki tüm ürün listesi koleksiyonlarına otomatik olarak eklenir.

Magento Geliştirme ile eğlenin!

+1

Açıklama: Kategori koleksiyonları için de çalışır ( 'yerine" ") – Alex