我需要在tabs.html文件中添加一个自定义属性,但当我添加时:
<?php
$_product = $this->getProduct();
echo $_product->getData('color_availability');
?>
它给我带来了以下错误:
致命错误:在第102行上调用/var/www/vhosts/website.co.uk/httpdocs/app/design/fronend/customtemplate/default/template/catalog/product/view/tabs.phtml中非对象的成员函数getData()
$_product为NULL。
我在这里错过了什么?有人能帮我吗?
您希望实现什么?tabs.html只是循环浏览所有可用的选项卡并显示其内容$此->getProduct将不适用于此Block类型。
$this->getProduct()将不是产品对象
你需要这样做:
<?php
//Get the current product
$productId = Mage::registry('current_product')->getId();
//Load the current product
$_product = Mage::getModel('catalog/product')->load($productId);
//Get the attribute data of the loaded product
$color_availability = $_product->getData('color_availability');
//This may not work. Depends upon what kind of attribute color_availability is
//If this doesn't work let me know
?>
<!-- echo the value -->
<?php echo $color_availability ;?>
如果是该产品,则可以使用注册表变量在产品的任何位置获取产品模型
如果是产品页面,则只需调用Mage::registry('current_product')->getData('color_availability');