Magento - поиск продуктов, созданных за последний час

Я пытаюсь найти товары, созданные за последний час.

Я могу сортировать товары по дате создания следующим образом:

$collection = Mage::getModel('catalog/product')
    ->getCollection()
    ->addAttributeToSelect('*')
    ->addAttributeToSort('created_at', 'desc');

Но я бы хотел отфильтровать по созданному. Я попытался заменить последнюю строку вышеуказанного блока на addAttributeToFilter('created_at', array('gteq' =>$time));что, я думаю, должно быть правильно, но я не могу найти правильный формат для $time,

Я на правильном пути здесь, и если да, то в каком формате я должен кормить $time в с?

1 ответ

Решение

Вы должны использовать формат отметки времени MySQL. Следующий код работал для меня:

$time = "2013-02-06 09:32:23"; // 'yyyy-mm-dd hh:mm:ss'

$collection = Mage::getModel('catalog/product')
->getCollection()
->addAttributeToSelect('*')
->addAttributeToSort('created_at', 'desc')
->addAttributeToFilter('created_at', array('gteq' =>$time));

Вы можете довольно легко найти формат данного атрибута, просто отобразив его на экране. Например:

$collection = Mage::getModel('catalog/product')
->getCollection()
->addAttributeToSelect('*')
->addAttributeToSort('created_at', 'desc');

exit($collection->getFirstItem()->getData('created_at');

Выход для этого был 2013-02-06 09:32:23 (в моей среде)

Другие вопросы по тегам