在magento中获取所有属性的列表以创建新的可配置产品

时间:2013-02-27 00:41:58

标签: magento-1.7

我想列出所有可用于创建可配置产品的属性。 (例如在选择“创建可配置产品”之后的复选框列表。

我试过了:

$attributes = Mage::getResourceModel('eav/entity_attribute_set_collection')->setEntityTypeFilter(Mage::getModel('catalog/product')->getResource()->getConfigurableId());`

但是没有收集任何集合。

2 个答案:

答案 0 :(得分:1)

我尝试了这个,它有效:

$product = Mage::getSingleton("catalog/product");
$attributes = $product->getTypeInstance(true)->getSetAttributes($product);
foreach ($attributes as $attribute) {
  if (($attribute->getIsConfigurable()) && ($attribute->getIsVisible()) && ($attribute->usesSource()) && ($attribute->getIsGlobal() == Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_GLOBAL)){
    ... do some things ...
  }
}

也许不是列出这些属性的最佳方式!

答案 1 :(得分:0)

试试这个:

$collection = Mage::getResourceModel('catalog/product_type_configurable_attribute_collection');

或者,如果您想要分配给特定产品的可配置属性:

$collection = Mage::getResourceModel('catalog/product_type_configurable_attribute_collection')
    ->setProductFilter($product)
;