我有以下设置:
cms页面,其内容显示在产品页面上。 (通过调用模板phtml文件中的cms块)
我不想触摸产品页面的phtml文件,以便我可以保证模板升级安全(我买了模板)
我想在产品页面内显示产品sku编号以及出现在其他属性部分的sku,这是默认设置。
由于模板已经提供了cms块以使内容出现在产品定价附近(这是我想要sku出现的地方)我想我会尝试通过调用phtml文件来获取cms块内的sku在cms区域内。
我创建了一个phtml文件,如下所示:
app/design/frontend/default/mytheme/template/page/getSku.phtml
我已经在其中放置了以下代码(这应该是产品sku):
<?php
//get product sku
echo $_product->getAttributeText('sku');
?>
我已将以下内容放在cms块中(调用phtml文件):
{{block type="core/template" template="page/getSuk.phtml"}}
错误: 我的页面没有完全显示,(似乎页面没有完全呈现。)
谢谢。
答案 0 :(得分:0)
我在这里找到答案: Calling an attribute in a CMS block in magento
首先使用以下内容在phtml页面上获取产品模型:
<?php
$_prodID = Mage::registry('current_product')->getId();
$_product = Mage::getModel('catalog/product')->load($_prodID );
?>
只有这样才能访问属性,如下所示:
echo $_product->getData('sku')