Magento list.phtml中下拉属性的值错误

时间:2016-05-20 08:48:26

标签: php magento attributes dropdown

我在Magento中创建了一个自定义属性(下拉列表)“product_overlay”(带有“NEW”,“Backorder”,“Cashback available”等选项)。我想使用list.phtml中的选定选项将图像添加到视图中,以防选择了某些内容。

但是,在某些情况下,系统会返回具有最低ID(我首先创建的ID)的选项,尽管选择了不同的选项或注释。在其他情况下,它工作得很好。

我正在使用此行来获取所选值。

$overlay = $_product->getResource()->getAttribute('product_overlay')->getFrontend()->getValue($_product);

调试此问题的正确方法是什么?

1 个答案:

答案 0 :(得分:0)

对于下拉属性,使用getAttributeText()往往是更健壮的数据检索方式:

$overlay = $_product->getAttributeText('product_overlay');

编辑 - 然后您可以循环查看潜在的选项:

<?php
    if($overlay == "NEW") {
        echo "something";
    } elseif ($overlay == "Backorder") {
        echo "something else";
    } elseif ($overlay == "Cashback available") {
        echo "another something";
    } elseif {
        // etc
    }
?>