在我的Magento产品页面上;当产品具有一个自定义属性的多个值时;而不是显示值,它显示文本“数组”。它可以正常使用一个值。 谢谢, -SAM
答案 0 :(得分:0)
您可以执行以下操作:
<?php
foreach($_product->getMetal() as $name => $value): ?>
<?php echo $name;?> = <?php echo $value;?>
<?php
endforeach; ?>
Magento利用PHP的魔术getter / setter功能(http://www.php.net/manual/en/language.oop5.overloading.php#object.get)。
您可以执行vardump($_product)
查看可用属性(它们存储在产品的_data数组中)。然后要检索其中一个,只需删除下划线并将每个单词的第一个字母更改为大写。
修改强>
如果上面的代码没有输出值,你可以这样做(它会告诉你如何获取值):
<?php
foreach($_product->getMetal() as $attribute): ?>
<?php var_dump($attribute); ?>
<?php
endforeach; ?>
答案 1 :(得分:0)
我在Magento论坛上发现了这个,它似乎有效: `getData('attribute_name')):?&gt;
getResource() - &gt; getAttribute('attribute_name') - &gt; getFrontend() - &gt; getValue($ _ product))?&gt;
`