如何在magento中为属性添加注释?
我使用管理面板在Magento中创建了一个新的产品属性。但我找不到该属性的注释放在何处(即应该显示在输入字段下方作为有关该属性的额外信息的文本) 我是否遗漏了什么,或者这不可能在管理面板中实现 这是一个关于属性上注释的示例:如何在magento中为属性添加注释?,magento,attributes,Magento,Attributes,我使用管理面板在Magento中创建了一个新的产品属性。但我找不到该属性的注释放在何处(即应该显示在输入字段下方作为有关该属性的额外信息的文本) 我是否遗漏了什么,或者这不可能在管理面板中实现 这是一个关于属性上注释的示例: 我使用的是Magento 1.7 CE。无法通过管理面板实现 顺便说一句,您确实应该通过编程方式添加属性。(如果您的数据库崩溃,那么您的任务就完成了) 您需要修改eav_属性表的“note”列 您可以在升级脚本中使用updateAttribute()命令对其进行修改。例如
我使用的是Magento 1.7 CE。无法通过管理面板实现 顺便说一句,您确实应该通过编程方式添加属性。(如果您的数据库崩溃,那么您的任务就完成了) 您需要修改eav_属性表的“note”列 您可以在升级脚本中使用
updateAttribute()
命令对其进行修改。例如:
$installer->updateAttribute(Mage_Catalog_Model_Product::ENTITY, 'color', 'note','my comment');
嗯,这可能有点晚了,但无论如何,我今天遇到了一个类似的问题,并用以下直观的方式解决了它: 首先,我的问题是: 如何在扩展搜索页面中获取自定义顺序中的属性 为此,我在这里发现了一些东西: --他们告诉我们: 您可以使用mysql表中的自定义未使用字段“note”:“eav_属性” 因此,您可以在 app\code\core\Mage\CatalogSearch\Model\Advanced.php 命令由 i、 e from:
->setOrder('main_table.attribute_id','asc')
收件人:->setOrder('main_table.note','asc')
但是,您仍然有一个问题,如何正确地编辑内容,而不必在mysql客户机中直接编辑任何内容;从现在起,我遇到了你的问题,我的解决方案:
型号:获取/设置
- 在app/code/core/Mage/Eav/Model/Entity/Attribute/Abstract.php中
- grep:class Mage\u Eav\u Model\u Entity\u Attribute\u Abstract ex
- 添加:搜索后最佳:“n getName”
/**
*获取属性注释
*
*@返回字符串
*/
公共函数getNote()
{
返回$this->_getData('note');
}
/**
*设置属性注释
*
*@param string$name
*@return Mage\u Eav\u Model\u Entity\u Attribute\u Abstract
*/
公共函数setNote($note)
{
返回$this->setData('note',$note);
}
控制器:设置
- 在app/code/core/Mage/Adminhtml/controllers/Catalog/Product/AttributeController.php中
- (好的,这是一个快捷方式,我想你可以在“note_text”的某个地方添加一些属性,但我没有magento的计划)
- 搜索:“默认值”并扩展:
- 发件人:
$defaultValueField=$model->getDefaultValueByInput($data['frontend_input']);
如果($defaultValueField){
$data['default_value']=$this->getRequest()->getParam($defaultValueField);
}
- 致:
$defaultValueField=$model->getDefaultValueByInput($data['frontend_input']);
如果($defaultValueField){
$data['default_value']=$this->getRequest()->getParam($defaultValueField);
$data['note']=$this->getRequest()->getParam('note_text');
}
查看:
- 在./app/code/core/Mage/Eav/Block/Adminhtml/Attribute/Edit/Main/Abstract.php中
- 之后:
$fieldset->addField('default\u value\u text','text',数组(
- 加:
$fieldset->addField('note_text','text',array( 'name'=>'note_text', 'label'=>Mage::helper('eav')->\uuuu('Note Value'), 'title'=>Mage::helper('eav')->\uuuu('Note Value'), 'value'=>$attributeObject->getDefaultValue(), ));
update eav_attribute set note=lpad(attribute_id,10,'0000000000') where attribute_id not in(84,100);
id为84和100的属性已经有了一些注释。直接编辑magento核心文件不是一个好主意。Bixi的答案确实是一个好主意。这可能是一个愚蠢的问题。但是我应该将addAttribute命令添加到哪个文件?您必须将其添加到数据库升级脚本中。请参阅