Magento新产品没有在主页上显示

时间:2013-05-03 06:44:08

标签: magento magento-1.7

在magento我想在我的主页上展示新产品。所以,为了做到这一点,我搜索了许多博客和论坛。从所有这些中我都可以使用

{{block type="catalog/product_new" block_id="new.products" template="catalog/product/new.phtml"}}

CMS中的

- >主页内容我将获得新产品。但我仍然没有得到任何产品。此外,我试图更改活动日期。但它没有展示任何产品。那么有人可以告诉我这里的问题是什么吗?任何帮助和建议都会非常明显。感谢

5 个答案:

答案 0 :(得分:11)

catalog/product_new块的默认Magento实现中,规则是:

  • 产品应在目录

  • 中可见
  • 产品应将news_from_datenews_to_date属性设置为某些值

  • 属性news_from_date一直工作到今天的结束日期(23:59:59),属性news_to_date从今天的开始日期(00:00:00)起作用

如果至少有一种产品符合要求,则会生成块。同时刷新缓存并重新编制数据索引也可能有所帮助。

答案 1 :(得分:2)

万一你到此为止,还有另一个简单的解决方法:

系统 - >指数管理

并将它们全部选中(即使它们指示“绿色,不需要重新索引”并强制它们重新索引。

这解决了我的空getSize()问题,这反过来允许Special和New数据库请求查找产品,满足“if”条件并正确呈现。

答案 2 :(得分:0)

试试这个   在cms-> page-> design tab-> Layout Update XML

中编写以下代码
<reference name="content">
        <block type="catalog/product_list" name="featured" template="catalog/product/new.phtml">
        </block>
    </reference>

你必须在“app \ design \ frontend \ default \ default \ template \ catalog \ product”中添加new.phtml文件。

在new.phtml文件中编写以下代码

<?php

/******************

        //Recently Added Products

    ************************/
$_helper = $this->helper('catalog/output');
$_productCollection = Mage::getResourceModel('reports/product_collection')
                    ->addAttributeToSelect('*')
                    ->setVisibility(array(2,3,4))                   
                    ->setOrder('created_at', 'desc');

?>


    <div style="clear: both;"></div>

    <div id="block">
        <div class="text">Recently Added Products
            <a href="<?php echo $this->getUrl("recent_added"); ?>" class="link"> View more &#187; </a>
        </div>
    </div>

    <?php foreach($_productCollection as $_product) : ?>
        <div class="grid">

            <div class="imgholder" >
                    <a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" 
                    class="product-image">
                    <img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(135); ?>" width="135" height="135" 
                    alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" /></a>
            </div>

            <strong><a href="<?php echo $_product->getProductUrl(); ?>" style="color:#039;"><?php echo $_product->getName(); ?></a></strong>

            <p><?php echo $_helper->productAttribute($_product, $_product->getShortDescription(), 'short_description') ?></p>

            <div class="price">
             <?php echo $this->getPriceHtml($_product, true) ?>
            </div>

        </div>

    <?php endforeach; ?>

答案 3 :(得分:0)

您也可以使用Widget显示它。我的意思是在CMS主页中添加小部件。

答案 4 :(得分:0)

我有这个问题,并与一位代理人交谈,后者为我控制了它,并解释说它没有帮助。您需要将所有导航类别放入最高根类别(因此所有类别看起来都是您无法删除的第一个根的子类别。它们不能是或源于任何并行根类别。然后刷新您的索引和类别项目将在导航菜单中显示。