在magento的“Additional information”下添加属性信息以外的内容

add content other than attribute information under “Additional information” in magento

我们可以在 magento 产品视图页面中看到 "Additional information " 选项卡。

在那里我们可以列出所有属性。

我想在 "Additional information " 选项卡下显示一些内容....

表示

主要信息

属性标签 1:属性值

子-信息

属性标签 2:属性值。

如果您需要任何说明,请告诉我。

提前致谢。

如在 Magento SE 上的回答:

You could customize the template catalog/product/view/attributes.phtml. Copy it to your theme from base/default if it isn't there yet and include what you need.

For better maintainability, I'd recommend to just add $this->getChildHtml('my_child_alias') to the template and define child blocks in the layout (i.e. layout/local.xml of your theme:

<reference name="product.attributes">
    <block type="core/template" name="my.custom.product.block" as="my_child_alias" template="my/custom/template.phtml" />
</reference>

根据您在此处评论中的附加信息判断,您可能不想创建子块,而是必须在 foreach 循环中添加代码。

原创

    <?php foreach ($_additional as $_data): ?>
        <tr>
            <th class="label"><?php echo $this->escapeHtml($this->__($_data['label'])) ?></th>
            <td class="data"><?php echo $_helper->productAttribute($_product, $_data['value'], $_data['code']) ?></td>
        </tr>
    <?php endforeach; ?>

已更改(示例)

    <?php foreach ($_additional as $_data): ?>
        <?php if ($_data['code'] == 'attribute_1'): ?>
        <tr><th colspan="2"><?php echo $this->__('Main Information') ?></th></tr>
        <?php elseif ($_data['code'] == 'attribute_2'): ?>
        <tr><th colspan="2"><?php echo $this->__('Sub Information') ?></th></tr>
        <?php endif; ?>
        <tr>
            <th class="label"><?php echo $this->escapeHtml($this->__($_data['label'])) ?></th>
            <td class="data"><?php echo $_helper->productAttribute($_product, $_data['value'], $_data['code']) ?></td>
        </tr>
    <?php endforeach; ?>

其中attribute_1attribute_2是每组第一个属性的代码。

修改文件:catalog\product\view\attributes.phtml.

用此代码替换 <th></th>

<th class="label">
<?php if(array_key_exists('size',$_additional) && array_key_exists('color',$_additional) ){
                        if($_data['code'] == 'size'){
                            echo " Main features : ";
                        }
                    } ?>
                    <?php echo $this->escapeHtml($this->__($_data['label'])) ?>
                </th>

应用此代码并检查放置。