Magento - Feed按日期属性排序

时间:2014-07-08 07:29:04

标签: php magento feed

我在Magento中创建了一个自定义观察器来更改我的Feed的顺序。 在config.xml中我启用了这个部分。

<ewfeed_feed_products>
    <observers>
        <example_ewfeed_products>
            <type>singleton</type>
            <class>ewfeed/observer_example</class>
            <method>feedProducts</method>
        </example_ewfeed_products>
    </observers>
</ewfeed_feed_products>

我已将Example.php更改为此。

static function feedProducts(Varien_Object $observer)
{
    $feed = $observer->getFeed();
    $productCollection = $observer->getProductCollection();
    $transport = $observer->getTransport();

    //lets try sorting
    $productCollection->addAttributeToSort('news_to_date', 'DESC'); 

    $originalIds = $productCollection->getAllIds();

    // any ids set here are products that will be used in the feed. they will be listed in the order of the ids in the array
    // so if you change the order it will change the order of the outputted products. you can also filter products here
    $transport->setProductIds($originalIds); // set to null to use default
}

'new_to_date'是具有日期值的属性。现在我需要的是,Feed将按此日期降序排序。但是当我添加addAttributeToSort时没有任何反应。有人可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

  1. 该属性news_to_date是否设置为搜索和排序所需。

  2. 您的搜索是使用Solr还是全文搜索。

  3. 如果solr对已填充产品的字段使用solr隧道和查询solr。

  4. 我们发现,在Solr中存储时,此特定属性会产生问题,因为它会提取错误的值。