magento -- 如何为商品分类(category)添加自定义属性

简介:

magento 中,由于使用了强大的EAV设计方法,我们可以很方便的给商品添加任意数量的属性。然而magento 没有给我们提供给商品分类添 加属性的功能。尽管我们知道magento所采用的EAV设计方法是完全可以实现的,但是我们又该如何才能给magento 的商品分类添加一个属性呢?比 如我们想基于产品分类添加一些属性使之应用于产品,或者用来区分产品分类等。

如果不通过magento 的方式,直接通过操作数据库,可以按照以下步骤来添加:

step 1,向eav_attribute表插入一条记录。作用是定义一个新属性,并指定这个属性属于商品分类category。先找出magento 商品分类(category entity)对应的entity_type_id,并确定好attribute_cod, backend_type, frontend_input, frontend_label, default_value, source_mode的值。如果不确定某个字段应该使用什么 值,可以参考一个商品分类其它属性的值来设定。

NSERT INTO eav_attribute
( entity_type_id attribute_code backend_type frontend_input frontend_label default_value source_model )
VALUES
( 3 'category_featured' 'int' 'select' 'Featured Category' '' 'eav/entity_attribute_source_boolean' );

注意:一定要确认正确的 entity_type_id,不要照搬上面的sql语句,如果不太熟悉可以直接使用phpmyadmin,尽量参照商品分类其它属性的值。

仅仅这一句只是给分类添加了新增的属性,但是那些已经创建的分类是不会有这些属性的,为了让这些分类有新增的属性,还需要向magento的另一个 表中插入一条记录。

Step 2,向eav_entity_attribute插入一条记录。其中 entity_type_id和上面得到的是一样的,attribute_id则是上面新插入记录的ID,sort_order则是这个属性在这个属性组 中排序的序号。attribute_set_id属性集的ID,attribute_group_id是属性分组的ID。一样的,如果你不能完全确认相应 字段的值,可以通过参考商品分类其它属性的值来确定。

INSERT INTO eav_entity_attribute ( entity_type_id, attribute_set_id, attribute_group_id, attribute_id, sort_order ) VALUES ( 3, 3, 3, <new attribute ID>, <next sort order> )

这样你就给magento的商品分类(category)添加了一个新属性,而且已经添加完的分类也会这个新增属性。

那我们如何,才能在magento模板中,或者magento的model,helper,controller的类代码中获取到这个属性的值呢? 得益于magento强大的setter,getter,你可以直接使用$category->getAttribute_name()来获取这个 属性的值。

 

出处:http://blog.csdn.net/xinhaozheng/archive/2009/07/30/4395564.aspx

目录
相关文章
|
SQL 算法 关系型数据库
Mysql关键字执行顺序-深入解析
Mysql关键字执行顺序-深入解析
1933 0
Mysql关键字执行顺序-深入解析
|
分布式计算 大数据 数据处理
「大数据」Kappa架构
**Kappa架构**聚焦于流处理,用单一处理层应对实时和批量数据,消除Lambda架构的双重系统。通过数据重放保证一致性,简化开发与维护,降低成本,提升灵活性。然而,资源消耗大,复杂查询处理不易。关键技术包括Apache Flink、Spark Streaming、Kafka、DynamoDB等,适合需实时批量数据处理的场景。随着流处理技术进步,其优势日益凸显。
756 0
「大数据」Kappa架构
|
Cloud Native 关系型数据库 分布式数据库
【PolarDB开源】PolarDB数据迁移实战:平滑过渡至云原生数据库
【5月更文挑战第24天】本文介绍了如何平滑迁移数据至阿里云的云原生数据库PolarDB,包括迁移准备、策略选择、步骤、验证及示例代码。通过需求分析、环境准备和数据评估,选择全量、增量或在线迁移策略。使用数据导出、导入及同步工具(如DTS)完成迁移,并在完成后验证数据一致性、性能和安全。正确执行可确保业务连续性和数据完整性。
509 1
Latex标题左对齐
在ctexart类型文章中,标题\section标题是居中的,现需要改为左对齐,需要设置如下: \documentclass[UTF8]{ctexart} \CTEXsetup[format={\Large\bfse...
6680 0
|
算法
基于MATLAB的自适应调制解调通信系统的误码率仿真,对比BPSK,QPSK,16QAM,64QAM
基于MATLAB的自适应调制解调通信系统的误码率仿真,对比BPSK,QPSK,16QAM,64QAM
348 0
|
消息中间件 缓存 供应链
“消息驱动、事件驱动、流 ”基础概念解析
本文旨在帮助大家对近期消息领域的高频词“消息驱动(Message-Driven),事件驱动(Event-Driven)和流(Streaming)”有更清晰的了解和认知,其中事件驱动 EDA 作为 Gartner 预测的十大技术趋势之一, EventBridge 作为下一代消息中间件,也是目前的重点方向之一。
“消息驱动、事件驱动、流 ”基础概念解析
|
应用服务中间件 Linux nginx
./configure: error: C compiler cc is not found
./configure: error: C compiler cc is not found
1255 0
|
机器学习/深度学习 人工智能 计算机视觉
图像修复使用率最高数据集总结
有效整理、附官网链接
567 0
图像修复使用率最高数据集总结
|
弹性计算
阿里云裸金属服务器ebmg5+ebmhfg5+ebmc4计费标准
阿里云EBM弹性裸金属服务器(神龙)目前分为三种规格,即通用型弹性裸金属服务器 (ebmg5) 、高主频型弹性裸金属服务器 (ebmhfg5) 和计算型弹性裸金属服务器 (ebmc4) ,新手站长网分享这三款EBM实例价格计费说明表: EBM弹性裸金属服务器价格表 阿里云EBM弹性裸金属服务器支持...
3096 0