0

我正在使用 magento 的默认随机产品块。因为它在今天之前工作正常。但现在每次只显示两个固定产品。我设置了 5 个产品的限制。

突然,它的行为很奇怪。

这是我在随机块中的代码

  protected function _getProductCollection()
    {
        if (is_null($this->_productCollection)) {
            $collection = Mage::getResourceModel('catalog/product_collection');
            Mage::getModel('catalog/layer')->prepareProductCollection($collection);
            $collection->getSelect()->order('rand()');
            $collection->addStoreFilter();
            $numProducts = $this->getNumProducts() ? $this->getNumProducts() : 0;
            $collection->setPage(1, $numProducts)->load();

            $this->_productCollection = $collection;
        }
        return $this->_productCollection;
    }

这是我在主页 CMS 页面中的块代码。

{{block type="catalog/product_list_random" name="product_random" num_products="5" template="catalog/product/random.phtml"}}

这是我在模板文件中的调用。

$_productCollection=$this->getLoadedProductCollection();

一件更烦人的事情是,如果我在管理站点中将产品设置为新产品,该产品显示在随机产品列表中。这到底是怎么回事?

4

1 回答 1

0

哎呀!那又是一个重新索引问题!!!!

重新索引后,随机产品块按预期工作。

发生了什么,Magento 只从新创建/更新的产品中挑选随机产品。

只是在晚上重新索引的猜测让我的夜晚。

于 2012-08-14T11:41:48.197 回答