将MAGENTO中的PRODUCT产品进行排序,有货的在前,无货的在后

在product collision后面加入对产品是否有货的排序

            //add code for product collection sort by stock
            $productColl->getSelect()->joinLeft(
                array('_inventory_table'=>$productColl->getTable('cataloginventory/stock_item')),
                "_inventory_table.product_id = e.entity_id",
                array('is_in_stock', 'manage_stock')
            );
            $productColl->addExpressionAttributeToSelect('on_top',
                '(CASE WHEN (((_inventory_table.use_config_manage_stock = 1) AND (_inventory_table.is_in_stock = 1)) OR  ((_inventory_table.use_config_manage_stock = 0) AND (1 - _inventory_table.manage_stock + _inventory_table.is_in_stock >= 1))) THEN 1 ELSE 0 END)',
                array());
            $productColl->getSelect()->order('on_top DESC');
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • “谁知道爱是什么,短暂的相遇却念念不忘。”一首很久都不敢听的歌,从他的耳机里传来。 刚遇到她的时候,得知她很喜欢李...
    DrJoseph阅读 296评论 0 0
  • 能够取悦妈妈的电影一定是好电影 避开人潮提前带妈妈过母亲节,再诸多好评下选择了印度电影《摔跤吧.爸爸》。然后...
    憨憨的恶魔阅读 256评论 0 1
  •   现在的群多电商环境下,越来越来都的创业型企业倒闭,折射出来的是当今互利网时代的机会和挑战。  这让我突然想到了...
    小小亭长阅读 252评论 0 0