2014-02-05 59 views
2

屬性我有產品:找屬性組的Magento

<?php $_helper = $this->helper('catalog/output'); ?> 
<?php $_product = $this->getProduct(); ?> 

我有名稱屬性組(未ID)。

我需要列出此屬性組中的所有屬性名稱和值(對屬性集無關緊要)。

如何從屬性組獲得屬性和值,如果我只知道產品和屬性組名稱?

回答

6
$setId = $_product->getAttributeSetId(); // Attribute set Id 
     $groups = Mage::getModel('eav/entity_attribute_group') 
      ->getResourceCollection() 
      ->setAttributeSetFilter($setId) 
      ->setSortOrder() 
      ->load(); 

     $attributeCodes = array(); 
     foreach ($groups as $group) { 
      if($group->getAttributeGroupName() == 'Somename'){ // set name 
      //$groupName   = $group->getAttributeGroupName(); 
      //$groupId   = $group->getAttributeGroupId(); 

      $attributes = Mage::getResourceModel('catalog/product_attribute_collection') 
       ->setAttributeGroupFilter($group->getId()) 
       ->addVisibleFilter() 
       ->checkConfigurableProducts() 
       ->load(); 
       if ($attributes->getSize() > 0) { 
        foreach ($attributes->getItems() as $attribute) { 
         /* @var $child Mage_Eav_Model_Entity_Attribute */ 
         $attributeCodes[] = $attribute->getAttributeCode();      
        } 
       } 
      } 
     } 
     print_r($attributeCodes);