Ben sorunları Magento davranmaya bir döngü içinde addAttributeToFilter işlevini alıyorum yaşıyorum. Ben aşağıdaki verilerin tümü için arama desteklemek için benim mağaza test verileri var;
$attributeSelections=array( array('size' => 44, 'color' => 67, 'manufacturer' => 17),
array('size' => 43, 'color' => 69, 'manufacturer' => 17),
array('size' => 42, 'color' => 70, 'manufacturer' => 17));
Ve benim kod bu kombinasyonları ile aramak için;
foreach ($attributeSelections as $selection) {
$searcher = Mage::getSingleton('catalogsearch/advanced')->getProductCollection();
foreach ($selection as $k => $v) {
$searcher->addAttributeToFilter("$k", array('eq' => "$v"));
echo "$k: $v<br />";
}
$result=$searcher->getData();
print_r($result);
}
Bu döngü aşağıdaki sonuçları (biraz zevk veiwing kaIdýrýIdý) verir;
size: 44
color: 67
manufacturer: 17
Array ( [0] => Array ( [entity_id] => 2965 [entity_type_id] => 4 [attribute_set_id] => 28 [type_id] => simple [sku] => 1006-0001 [size] => 44 [color] => 67 [manufacturer] => 17 ) )
size: 43
color: 69
manufacturer: 17
Array ( [0] => Array ( [entity_id] => 2965 [entity_type_id] => 4 [attribute_set_id] => 28 [type_id] => simple [sku] => 1006-0001 [size] => 44 [color] => 67 [manufacturer] => 17 ) )
size: 42
color: 70
manufacturer: 17
Array ( [0] => Array ( [entity_id] => 2965 [entity_type_id] => 4 [attribute_set_id] => 28 [type_id] => simple [sku] => 1006-0001 [size] => 44 [color] => 67 [manufacturer] => 17 ) )
So my loop is function and generating the search. However, the values fed into addAttributeToFilter on the first itteration of the loop seem to remain stored for each search. I've tried clearing my search object, for example, unset($searcher) and unset($result). I've also tried magento functions such as getNewEmptyItem(), resetData(), distinct() and clear() but none have the desired effect.
Temelde ne yapmaya çalışıyorum benim senaryom programatically bu kombinasyonları niteliği olan bir ürün yaratmak için çalışır önce yinelenen ürünler için kontrol etmektir. Öznitelik seçimleri dizisi dolayısıyla değişen boyutlarda bir döngü için ihtiyaç olabilir.
Herkes benim sorun biraz ışık tutmak mümkün olabilir eğer ben çok appreiciative olurdu.