/*** 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();
Get value from a select box attribute
The attribute code is supposed to be ‘my_attribute‘
->load($_product->getId())
->getAttributeText(‘my_attribute’);
1
2
3
|
$attributeValue = Mage::getModel(‘catalog/product’)
->load($_product->getId())
->getAttributeText(‘my_attribute’);
|
Load any particular attribute by attribute code
->setCodeFilter(YOUR_ATTRIBUTE_CODE)
->getFirstItem();
// echo “<pre>”; print_r($attributeInfo->getData());
1
2
3
4
5
|
$attributeInfo = Mage::getResourceModel(‘eav/entity_attribute_collection’)
->setCodeFilter(YOUR_ATTRIBUTE_CODE)
->getFirstItem();
// echo “<pre>”; print_r($attributeInfo->getData());
|
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. See code above.
Here is the code to get all option values for my attribute $attributeInfo.
// echo “<pre>”; print_r($attributeOptions);
1
2
|
$attributeOptions = $attributeInfo->getSource()->getAllOptions(false);
// echo “<pre>”; print_r($attributeOptions);
|
Get all options of any attribute
Getting all options of attribute with attribute-code “color“.
if ($attribute->usesSource()) {
$options = $attribute->getSource()->getAllOptions(false);
}
1
2
3
4
|
$attribute = Mage::getSingleton(‘eav/config’)->getAttribute(‘catalog_product’, ‘color’);
if ($attribute->usesSource()) {
$options = $attribute->getSource()->getAllOptions(false);
}
|
Get attribute’s option information by option id
I have my attribute as $attributeInfo.
I have my attribute’s option value array as $attributeOptions.
See code above.
Suppose, I want to get detail information of any option listed in strong>$attributeOptions array. Here is the code to do so:-
$optionId = YOUR_ATTRIBUTE_OPTION_ID;
$attributeOptionSingle = Mage::getResourceModel(‘eav/entity_attribute_option_collection’)
->setPositionOrder(‘asc’)
->setAttributeFilter($attributeId)
->setIdFilter($optionId)
->setStoreFilter()
->load()
->getFirstItem();
// echo “<pre>”; print_r($attributeOptionSingle);
1
2
3
4
5
6
7
8
9
10
11
12
|
$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 “<pre>”; print_r($attributeOptionSingle);
|
Get attribute of particular entity type
Here, I am going to get information about ‘order_id‘ attribute of ‘invoice‘ entity type.
$entityTypeId = $entityType->getEntityTypeId();
$attribute = Mage::getResourceModel(‘eav/entity_attribute_collection’)
->setCodeFilter(‘order_id’)
->setEntityTypeFilter($entityTypeId)
->getFirstItem();
1
2
3
4
5
6
7
|
$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
1
|
$confAttributes = $_product->getTypeInstance(true)->getConfigurableAttributesAsArray($_product);
|
Hope this helps. Thanks.
soruce From:http://blog.chapagain.com.np/magento-how-to-get-attribute-name-and-value/