目录产品列表页面的模板文件是 list.phtml。使用 foreach 循环渲染类别中的所有产品。
我对 price.phtml 的渲染感到困惑。因为句柄中没有它的块
现在,<?php echo $this->getPriceHtml($_product, true) ?>
返回产品的价格。
此方法如何链接到 price.phtml ?
请阐明一些观点。谢谢
目录产品列表页面的模板文件是 list.phtml。使用 foreach 循环渲染类别中的所有产品。
我对 price.phtml 的渲染感到困惑。因为句柄中没有它的块
现在,<?php echo $this->getPriceHtml($_product, true) ?>
返回产品的价格。
此方法如何链接到 price.phtml ?
请阐明一些观点。谢谢
与 list.phtml 一起使用的 Block 类是Mage_Catalog_Block_Product_List
,因此该方法getPriceHtml
位于此类或某些此类的父级中。在这种情况下,方法恰好位于Mage_Catalog_Block_Product_Abstract
我们块类的直接父级中:
public function getPriceHtml($product, $displayMinimalPrice = false, $idSuffix = '')
{
$type_id = $product->getTypeId();
if (Mage::helper('catalog')->canApplyMsrp($product)) {
$realPriceHtml = $this->_preparePriceRenderer($type_id)
->setProduct($product)
->setDisplayMinimalPrice($displayMinimalPrice)
->setIdSuffix($idSuffix)
->toHtml();
$product->setAddToCartUrl($this->getAddToCartUrl($product));
$product->setRealPriceHtml($realPriceHtml);
$type_id = $this->_mapRenderer;
}
return $this->_preparePriceRenderer($type_id)
->setProduct($product)
->setDisplayMinimalPrice($displayMinimalPrice)
->setIdSuffix($idSuffix)
->toHtml();
}