Magento的。我如何知道产品清单中是否使用了属性?

时间:2012-11-26 19:33:20

标签: magento attributes

我需要知道哪些属性“在产品列表中使用”选中为YES,但找不到任何功能,例如$ attribute-> getIsVisibleOnFront()

事实上,我不知道如何从属性的“前端属性”中获取选项值(在快速搜索中使用,在高级搜索中使用,...)

我的代码是这样的:

<?php $attributes = $_product->getAttributes();             
    foreach ($attributes as $attribute) {
        if ($attribute->getIsUsedInProductListing()) {
                       echo $attribute->getStoreLabel();
                    }
            }
    ?>

getIsUsedInProductListing()不存在; - )

...谢谢

1 个答案:

答案 0 :(得分:5)

是的,这很容易做到。

$product = Mage::getModel('catalog/product')->load($productId); // Or, use your product
$attributes = $product->getTypeInstance(true)->getSetAttributes($product);

foreach ($attributes as $attribute){
     var_dump($attribute); // You will be able to see all of the attribute settings here.

     if ($attribute->getUsedInProductListing()) {
          // Do cool things here.
     }

     if ($attribute->getIsHtmlAllowedOnFront()) {
          // Do cool things here.
     }

     if ($attribute->getIsVisibleInAdvancedSearch()) {
          // Do cool things here.
     }

     if ($attribute->getUsedForSortBy()) {
          // Do cool things here.
     }
}