Magento产品特价不在主页上工作

Kam*_*mal 1 php magento

我正在编辑一个优质的magento模板(Hellodisplay),它的主页上有一个特色产品部分.该部分通过调用静态块中定义的特定类别来工作.我这部分的问题是我无法以任何方式显示产品的特价.虽然特殊产品出现在产品详细信息页面上.它也在默认模板上运行正常.

我都试过功能getSpecialProductgetFinalProduct.GetSpecialProduct什么都不返回,GetFinalProduct返回正常价格.我也试过使用默认主题价格儿童html(price.phtml).它也不起作用.

然后我$_product在主页和产品页面上检查变量的print_r()输出.我注意到了差异.特殊数组值仅存在于产品页面的$_product变量中.那么如何让这个特价价格出现在主页上呢?

这是我的featured.phtml代码

<?php
/**
 * Product list template
 *
 * @see Mage_Catalog_Block_Product_List
 */
?>

<?php
$product_limit = 3;
$i = 1;
$_productCollection=$this->getLoadedProductCollection();
$cat_id = $this->category_id;

$_productCollection = Mage::getResourceModel('catalog/product_collection')
    ->addAttributeToSelect(array('name', 'price', 'small_image', 'status'), 'inner')
    ->addCategoryFilter(Mage::getModel('catalog/category')->load($cat_id));
?>

<?php if(!$_productCollection->count()): ?>
<div class="note-msg">
    <?php echo $this->__('There are no products matching the selection. Please provide a category ID.') ?>
</div>
<?php else: ?>

    <ul class="frontgrid">
        <?php $_collectionSize = $_productCollection->count() ?>
        <?php foreach ($_productCollection as $_product): ?>
            <?php if($i >= $product_limit+1){
                break; 
            } else{
                $a = $i % 3;
                $i++; 
            } ?>
            <li class="<?php echo "col".$a; ?>">
                <a class="imglink" href="<?php echo $_product->getProductUrl() ?>">
                    <img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(200, 200); ?>" width="200" height="200" alt="<?php echo $this->htmlEscape($_product->getName()); ?>" />
                </a>
                <h4><?php echo $this->htmlEscape($_product->getName()); ?></h4>
                <div class="boxbar">
                <span class="oldprice">
                    <?php if($this->htmlEscape($_product->getSpecialPrice())){ ?>
                        &euro; <?php echo number_format($this->htmlEscape($_product->getPrice()), 2) ?>
                    <? } ?>
                </span>
                <span class="price">

                    <?php if($this->htmlEscape($_product->getSpecialPrice())){ ?>
                        &euro; <?php echo number_format($this->htmlEscape($_product->getSpecialPrice()), 2) ?><br/>
                    <? } else { ?>
                        &euro; <?php echo number_format($this->htmlEscape($_product->getPrice()), 2) ?>
                    <? } ?>

                </span>
                <a class="moreinfo" href="<?php echo $_product->getProductUrl() ?>">Meer Info &raquo;</a>
                </div>
            </li>
        <?php endforeach ?>
    </ul>

<?php endif; ?>
Run Code Online (Sandbox Code Playgroud)

谢谢之前:)

Raf*_*ner 6

您必须在addAttributeToSelect数组上添加"special_price","special_from_date"和"special_to_date".