如何根据需要更改或更改类别中的属性位置?
答案 0 :(得分:4)
这是一种丑陋的做法,但我没有别的。
属性组中的属性位置保存在eav_entity_attribute
表中
首先,您需要确定属性short_description
的ID。
以下是对此的查询。
SELECT
attribute_id, attribute_code
FROM
eav_attribute
WHERE
attribute_code = 'short_description' AND
entity_type_id = (SELECT
entity_type_id
FROM
eav_entity_type
WHERE
entity_type_code = 'catalog_category'
)
我们说你得到的属性ID是100
。
然后,您需要获取属性的属性id,该属性应位于属性上方及其下方。
使用上述相同的查询,但将属性代码从short_description
更改为is_anchor
和description
。
我们假设您获得is_anchor
的值10和description
的值15。
然后在属性集中查看它们的位置。
SELECT * FROM `eav_entity_attribute` where `attribute_id` in (10, 15, 100);
查看sort_order
字段
让我们说你有这样的事情:
attribute_id|sort_order
10 | 40 //is_anchor attribute
15 | 50 //description attribute
100 | 120 //shot_description attribute
现在您只需要将short_description属性的sort_order更新为is_anchor和description之间的值。
在上面的示例中,您需要45
UPDATE `eav_entity_attribute` set `sort_order` = 45 where `attribute_id` = 100
答案 1 :(得分:1)
后端类别页面由以下文件呈现:
app/design/adminhtml/default/default/template/catalog/category
app/code/core/Mage/Adminhtml/Block/Catalog/Category
但它很复杂,那里也有很多javascript。
答案 2 :(得分:1)
您可以通过更新脚本实现此目的
$installer->run("
update {$installer->getTable('eav_entity_attribute')} set `sort_order`=1 where `attribute_id`=(select `attribute_id` from {$installer->getTable('eav_attribute')} where `attribute_code`='short_description');
");
如果排序顺序不正确,请尝试将sort_order值设置为0或作为最后的手段,同时更改其他属性的sort_order值。
答案 3 :(得分:-4)
有些事情可以在不进入代码的情况下解决:)
只需: 1.进入您的目录/属性/管理属性集/您的属性集。 2.将属性拖放到所需的位置 3.保存属性集