Php Magento:如何分离多个属性的显示?

Php Magento:如何分离多个属性的显示?,php,magento,content-management-system,e-commerce,Php,Magento,Content Management System,E Commerce,我使用此代码在Magento中显示(在前端)产品的所有指定属性: <?php if ($_product->getData('metal')): ?> <?php echo nl2br($_product->getResource()->getAttribute('metal')->getFrontend()->getValue($_product )) ?> <?php endif; ?> 我需要用一个项目

我使用此代码在Magento中显示(在前端)产品的所有指定属性:

<?php if ($_product->getData('metal')): ?>  
    <?php echo nl2br($_product->getResource()->getAttribute('metal')->getFrontend()->getValue($_product )) ?>  
<?php endif; ?>

我需要用一个项目符号分隔每个项目
和中断

。如何编辑此代码以反映这些更改? 提前谢谢


_Sam

假设上述代码正在“工作”。。。进行以下更改:

<?php echo "&#149;".nl2br($_product->getResource()->getAttribute('metal')->getFrontend()->getValue($_product ))."<br/>" ?>

explode
通过

切碎字符串,从字符串生成数组<代码>内爆
然后通过放置

\n•在每个元素之间。最后,我在前面加上项目符号,在结尾加上br。当内嵌时,您仍然必须考虑字符串的“外部”。

< P>假设上面的代码是“工作”的…进行以下更改:

<?php echo "&#149;".nl2br($_product->getResource()->getAttribute('metal')->getFrontend()->getValue($_product ))."<br/>" ?>
explode
通过

切碎字符串,从字符串生成数组<代码>内爆
然后通过放置

\n•在每个元素之间。最后,我在前面加上项目符号,在结尾加上br。当内爆时,你仍然必须考虑字符串的“外”。 这很简单:如果您的默认包中没有attributes.phtml,则从base复制attributes.phtml

放入app/design/frontend/default/default/template/catalog/product/view/folder

将第46行更改为:

<td class="data"><?php echo $_helper->productAttribute($_product, $_data['value'], $_data['code']) ?></td>

要显示单独的产品属性,请执行以下操作:

<td class="data"><?php echo $_helper->productAttribute($_product, str_replace(",", "<br />", $_data['value']), $_data['code']) ?></td> 

已解决。 这很简单:如果您的默认包中没有attributes.phtml,则从base复制attributes.phtml

放入app/design/frontend/default/default/template/catalog/product/view/folder

将第46行更改为:

<td class="data"><?php echo $_helper->productAttribute($_product, $_data['value'], $_data['code']) ?></td>

要显示单独的产品属性,请执行以下操作:

<td class="data"><?php echo $_helper->productAttribute($_product, str_replace(",", "<br />", $_data['value']), $_data['code']) ?></td> 

如果您想要对输出进行更多控制(可能您想要设置单个值的样式),请使用explode()


如果您想要对输出进行更多控制(可能您想要设置单个值的样式),请使用explode()



使用jQuery操作客户端。您能更具体一点吗?我应该在哪里/插入什么代码?泰克库勒!山姆,你喜欢现场直播吗?给我一个我试图用jQuery操作的链接。另外,我会查一下它来自哪里。Oguz,我没有实时站点。但以下是基于该代码显示的内容(例如):“18k黄金,纯银”。如果我能确定逗号是从哪里来的,我觉得我可以很容易地将它切换为一个断点,然后我找到了它,但我不确定您正在查找的函数。转到
/app/code/core/Mage/Eav/Model/Entity/Attribute/Frontend/Abstract.php
并查找
getValue
函数。您将看到一个内爆函数,它内爆属性值。尝试并让共享结果。使用jQuery操作客户端。您能更具体一点吗?我应该在哪里/插入什么代码?泰克库勒!山姆,你喜欢现场直播吗?给我一个我试图用jQuery操作的链接。另外,我会查一下它来自哪里。Oguz,我没有实时站点。但以下是基于该代码显示的内容(例如):“18k黄金,纯银”。如果我能确定逗号是从哪里来的,我觉得我可以很容易地将它切换为一个断点,然后我找到了它,但我不确定您正在查找的函数。转到
/app/code/core/Mage/Eav/Model/Entity/Attribute/Frontend/Abstract.php
并查找
getValue
函数。您将看到一个内爆函数,它内爆属性值。试着分享结果。谢谢克里斯。我发布的原始代码显示了所有属性,但它们之间用逗号分隔,而不是项目符号或分隔符。我尝试了两段代码,得到了相同的结果,用逗号分隔,在同一行;似乎我可以用break和bullet来代替它。嗯,也许可以尝试将第一个explode改为
$somehtml=explode(“,”,$somehtml)然后它将在逗号上完成它的工作??谢谢Chris。我发布的原始代码显示了所有属性,但它们之间用逗号分隔,而不是项目符号或分隔符。我尝试了两段代码,得到了相同的结果,用逗号分隔,在同一行;似乎我可以用break和bullet来代替它。嗯,也许可以尝试将第一个explode改为
$somehtml=explode(“,”,$somehtml)然后它会在那个逗号上工作??