我使用以下代码获取属性名称
$attributeId = Mage::getResourceModel('eav/entity_attribute')->getIdByCode('catalog_product','pricee');
echo $attribute = Mage::getModel('catalog/resource_eav_attribute')->load($attributeId);
$attribute->getFrontendLabel()
在这个'pricee'中是属性代码。但输出不是所需的输出,而是检索“Admin”下的值。屏幕下方显示我需要显示的实际字段
我做错了什么?请建议。
答案 0 :(得分:2)
法师::应用程序() - > setCurrentStore( '默认');
这将选择您所追求的默认商店。
您还可以尝试使用getStoreLabel($ storeId)函数来获取更具体的内容。
此功能位于:/app/code/core/Mage/Eav/Model/Entity/Attribute.php,如下所示:
/**
* Return store label of attribute
*
* @return string
*/
public function getStoreLabel($storeId = null)
{
if ($this->hasData('store_label')) {
return $this->getData('store_label');
}
$store = Mage::app()->getStore($storeId);
$label = false;
if (!$store->isAdmin()) {
$labels = $this->getStoreLabels();
if (isset($labels[$store->getId()])) {
return $labels[$store->getId()];
}
}
return $this->getFrontendLabel();
}
HTH,
Shaun O'Reilly
答案 1 :(得分:0)
实际上下面的代码在我的案例中有效,
$attributeId = Mage::getResourceModel('eav/entity_attribute')->getIdByCode('catalog_product','ATTRIBUTE_CODE_HERE');
$attribute = Mage::getModel('catalog/resource_eav_attribute')->load($attributeId);
$attributeOptions = $attribute ->getSource()->getAllOptions();
echo $attribute->getStoreLabels();
输出结果为:Array
(
[1] => Price
)