我已经开始使用 magento 作为我的电子商务 cms,我知道这是一个非常强大的平台。最近我发现它的功能可以帮助开发人员扩展核心,并且我设法添加了自定义类别选项。是否有机会在属性上获得相同的结果?我想在属性选项卡上添加文本描述并将其显示在前端?
问问题
4477 次
1 回答
11
这可以通过编写您自己的自定义模块来实现。我这样做是为了向属性添加工具提示选项。
您可以使用adminhtml_catalog_product_attribute_edit_prepare_form
-event 为您的观察者添加一个字段:
$fieldset = $observer->getForm()->getElement('base_fieldset');
$fieldset->addField('tooltip', 'text', array(
'name' => 'tooltip',
'label' => Mage::helper('catalog')->__('Tooltip'),
'title' => Mage::helper('catalog')->__('Tooltip')
));
这会将额外字段添加到属性编辑屏幕。接下来是确保在编辑属性时保存属性。这可以在您的安装程序脚本中完成,例如:
$installer->getConnection()->addColumn(
$installer->getTable('catalog/eav_attribute'),
'tooltip',
array(
'type' => Varien_Db_Ddl_Table::TYPE_TEXT,
'nullable' => true,
'comment' => 'Tooltip'
)
);
您还必须确保您的Model/Resource/Setup
-class 扩展Mage_Eav_Model_Entity_Setup
而不是Mage_Core_Model_Resource_Setup
.
现在,此时,您可以保存自定义属性属性。下一步是在前端显示它。这可以很容易地完成,只需简单的 Magento 模板 101:
例如,在catalog/product/view/type/options/configurable.phtml
-loopforeach()
中,放置类似这样的内容,以显示工具提示:
echo $_attribute->getProductAttribute()->getTooltip();
那很好...
更新:由于我通过电子邮件收到了一些关于这个主题的问题,我决定写一篇关于它的更详细的博客文章。你可以在这里阅读:http: //gielberkers.com/add-custom-properties-magento-attributes/
于 2013-07-23T13:20:51.220 回答