Magento 2在前端加载特定属性

时间:2016-03-22 11:34:02

标签: magento attributes magento2

我试图修改产品页面。我知道我需要更改哪些文件,但是我似乎无法确定我需要做什么具体的事情。

如何加载要在产品页面上显示的特定属性?我想要一个特定的人出现在一个比'&34;更多信息"标签

我可以理清样式和布局的东西,我只需要知道如何获取特定的属性。

其他问题:我已将其设置为" Image Swatch"。有没有办法让它在前端显示图像(当它是产品选项时,它似乎只是图像。)

2 个答案:

答案 0 :(得分:3)

最佳方式 - 创建一个块 您可以编辑相关的XML文件以创建块并将其放置在您需要的位置。如果需要,您可以添加容器(具有特定类的div);

<block class="Magento\Catalog\Block\Product\View\Description" name="product.info.sku" template="product/view/attribute.phtml" after="product.info.type">
    <arguments>
        <argument name="at_call" xsi:type="string">getSku</argument>
        <argument name="at_code" xsi:type="string">sku</argument>
        <argument name="css_class" xsi:type="string">sku</argument>
    </arguments>
</block>

在phtml模板中 如果您在phtml模板中工作,请执行以下操作;

<?php $_product = $block->getProduct(); ?>
<?php echo $_product->getAttributeText('size');?>

<强>参考 http://devdocs.magento.com/guides/v2.0/frontend-dev-guide/layouts/xml-manage.html#xml-manage-block

如果有人有更好的方法,那么找出它会很有意思。

答案 1 :(得分:0)

您还可以通过以下方式在自定义模板中加载属性:

 <?php /* @escapeNotVerified */ echo $product->getResource()->getAttribute('my_attribute_id')->getFrontend()->getValue($product); ?>