Let as assume the attribute code is "my_attribute"
/** * get attribute collection */ $attribute = $_product->getResource()->getAttribute('my_attribute'); /** * get attribute type */ $attribute->getAttributeType(); /** * get attribute Label */ $attribute->getFrontendLabel(); /** * get attribute default value */ $attribute->getDefaultValue(); /** * check if the attribute is visible */ $attribute->getIsVisible(); /** * check if the attribute is required */ $attribute->getIsRequired(); /** * get attribute value */ $attributeValue = Mage::getModel('catalog/product')->load($_product->getId())->getMyAttribute();
Here is the code to fetch value from a select box attribute
$attributeValue = Mage::getModel('catalog/product') ->load($_product->getId()) ->getAttributeText('my_attribute');
Load any particular attribute by attribute code
$attributeInfo = Mage::getResourceModel('eav/entity_attribute_collection') ->setCodeFilter(YOUR_ATTRIBUTE_CODE) ->getFirstItem(); // echo ""; print_r($attributeInfo->getData()); echo "";
Get all option value list for the particular attribute
You can see above that I got attribute information by attribute code. My attribute information is stored as $attributeInfo.
Here is the code to get all option values for my attribute $attributeInfo.
$attributeOptions = $attributeInfo->getSource()->getAllOptions(false); // echo ""; print_r($attributeOptions); echo "";
Get attribute’s option information by option id
I have my attribute as $attributeInfo.
I have my attribute’s option value array as $attributeOptions.
Suppose, I want to get detail information of any option listed in $attributeOptions array. Here is the code to do so
$attributeId = $attributeInfo->getAttributeId(); $optionId = YOUR_ATTRIBUTE_OPTION_ID; $attributeOptionSingle = Mage::getResourceModel('eav/entity_attribute_option_collection') ->setPositionOrder('asc') ->setAttributeFilter($attributeId) ->setIdFilter($optionId) ->setStoreFilter() ->load() ->getFirstItem(); // echo ""; print_r($attributeOptionSingle); echo "";
Get attribute of particular entity type
Here, I am going to get information about ‘order_id’ attribute of ‘invoice’ entity type.
$entityType = Mage::getModel('eav/config')->getEntityType('invoice'); $entityTypeId = $entityType->getEntityTypeId(); $attribute = Mage::getResourceModel('eav/entity_attribute_collection') ->setCodeFilter('order_id') ->setEntityTypeFilter($entityTypeId) ->getFirstItem();Get attribute options of Configurable product
$confAttributes = $_product->getTypeInstance(true)->getConfigurableAttributesAsArray($_product);
Really found helpful. The coding helps for better understanding. Have also found some features of and why to choose it : http://www.designaeon.com/top-motivations-to-pick-magento/
ReplyDelete