1
我从themeforest购买了一个模板,并且我注意到热销标签页中的条目显示在special_to_date
属性设置前一天(同时一般产品列表是正确的,并展示了包括活动的最后一天在内的销售产品)。获取magento 1.9.x的销售产品
因此,如果我们从8月25日到27日设置了一项活动,热销标签是空的(今天),但产品仍然在通用清单上出售(他们应该)。
所以,我看着模板代码,并发现这一点:
$todayDate = Mage::app()->getLocale()->date()->toString(Varien_Date::DATETIME_INTERNAL_FORMAT);
$collection = Mage::getResourceModel('catalog/product_collection')
->addAttributeToSelect(Mage::getSingleton('catalog/config')->getProductAttributes())
->addAttributeToFilter('special_from_date', array('or'=> array(
0 => array('date' => true, 'to' => $todayDate),
1 => array('is' => new Zend_Db_Expr('null')))
), 'left')
->addAttributeToFilter('special_to_date', array('or'=> array(
0 => array('date' => true, 'from' => $todayDate),
1 => array('is' => new Zend_Db_Expr('null')))
), 'left')
->addAttributeToFilter(
array(
array('attribute' => 'special_from_date', 'is'=>new Zend_Db_Expr('not null')),
array('attribute' => 'special_to_date', 'is'=>new Zend_Db_Expr('not null'))
)
)
->addAttributeToSort('price', 'asc')
->addTaxPercents()
->addStoreFilter();
现在,我没那么好与Magento的程序员的..我真的不明白这些addAttributeToFilter
但我最好的办法是,这是独特的(关于该活动结束日期):
->addAttributeToFilter('special_to_date', array('or'=> array(
0 => array('date' => true, 'from' => $todayDate),
1 => array('is' => new Zend_Db_Expr('null')))
), 'left')
所以,如果你可以在此提供一些线索,请做。我只是用我的小知识猜测这将是不收集产品last day
的special_to_date
的问题。