Magento - 在New Products块上显示Add to Compare按钮

时间:2014-09-02 12:31:36

标签: magento

我在Magento 1.9上,我在我的主页上显示“新产品”,但我无法获得每个新产品的“添加到比较”链接。 以下是我在CMS上的XML>页面>主页>设计标签

<reference name="content">
<block type="catalog/product_new" name="home.catalog.product.new" alias="product_new" template="catalog/product/new.phtml" after="cms_page">
<action method="addPriceBlockType"><type>bundle</type><block>bundle/catalog_product_price</block><template>bundle/catalog/product/price.phtml</template></action>
<action method="setColumnCount"><columns>5</columns></action>
<action method="setProductsCount"><count>10</count></action> 
</block>
</reference>

这是我在自定义主题文件夹中的new.phtml。在customtheme \ warecompare \ default \ template \ catalog \ product下。如您所见,有一些代码显示“添加到比较”链接。

<?php if (($_products = $this->getProductCollection()) && $_products->getSize()): ?>
<h2 class="subtitle"><?php echo $this->__('New Products') ?></h2>
<?php $_columnCount = $this->getColumnCount(); ?>
    <ul class="products-grid products-grid--max-<?php echo $_columnCount; ?>-col">
    <?php $i=0; foreach ($_products->getItems() as $_product): ?>
        <?php /*if ($i++%$_columnCount==0): ?>
        <ul class="products-grid">
        <?php endif*/ ?>
            <li class="item<?php if(($i-1)%$_columnCount==0): ?> first<?php elseif($i%$_columnCount==0): ?> last<?php endif; ?>">
                <a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->escapeHtml($_product->getName()) ?>" class="product-image">
                    <?php $_imgSize = 260; ?>
                    <img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize($_imgSize); ?>" alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" />
                </a>
                <h3 class="product-name"><a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->escapeHtml($_product->getName()) ?>"><?php echo $this->escapeHtml($_product->getName()) ?></a></h3>
                <?php echo $this->getReviewsSummaryHtml($_product, 'short') ?>
                <?php echo $this->getPriceHtml($_product, true, '-new') ?>
                <div class="actions">
                    <?php if($_product->isSaleable()): ?>
                        <button type="button" title="<?php echo $this->__('Add to Cart') ?>" class="button btn-cart" onclick="setLocation('<?php echo $this->getAddToCartUrl($_product) ?>')"><span><span><?php echo $this->__('Add to Cart') ?></span></span></button>
                    <?php else: ?>
                        <p class="availability out-of-stock"><span><?php echo $this->__('Out of stock') ?></span></p>
                    <?php endif; ?>
                    <ul class="add-to-links">
                        <?php if ($this->helper('wishlist')->isAllow()) : ?>
                            <li><a href="<?php echo $this->getAddToWishlistUrl($_product) ?>" class="link-wishlist"><?php echo $this->__('Add to Wishlist') ?></a></li>
                        <?php endif; ?>
                        <?php if ($_compareUrl = $this->getAddToCompareUrl($_product)): ?>
                            <li><span class="separator">|</span> <a href="<?php echo $_compareUrl ?>" class="link-compare"><?php echo $this->__('Add to Compare') ?></a></li>
                        <?php endif; ?>
                    </ul>
                </div>
            </li>
        <?php /*if ($i%$_columnCount==0 || $i==count($_products)): ?>
        </ul>
        <?php endif*/ ?>
    <?php endforeach; ?>
    </ul>
<?php endif; ?>

尽管上面都有上述代码,但新产品上显示的所有代码都是(1)产品图片(2)产品价格(3)没有别的。

是否因为块类型 catalog / product_new 不支持getAddToCompareUrl和上面的其他方法?我也试图找到对应于块类型catalog / product_new的源/类文件,但我不知道它是如何派生的以及在哪里找到它。

请帮忙。

由于 凯文

1 个答案:

答案 0 :(得分:0)

@sulman感谢您的投入。您的答案很可能就是答案,但我发现了实际问题,默认模板css隐藏了我主页上的操作div