在magento中给产品添加自定义属性是很容易实现在后台就可以很轻易添加,但是给分类就不行了,magento本身没有提供给category添加自定义属性。在实际的运用过程中我们想给cagegory添加属性就得自己想办法了。在这里说说我是怎么添加的。

思路:通过建立一个产品属性->通过数据库把这个属性更改为cagegory的属性

具体操作:1.建立一个产品属性 网站后台->catalog->Attribute->Manage Attribute 在这里新建好自己想要的属性。

     2.通过sql:SELECT attribute_id FROM `eav_attribute` where attribute_code='cus_category_description' 这里的attribute_code 这个值是你刚才新建的属性code 得到attribute_id。

     3.通过sql:SELECT entity_type_id FROM `eav_entity_type` where entity_type_code='catalog_category';找到entity_type_id。

     3.通过sql:update `eav_attribute` set entity_type_id=(第3步得到的 entity_type_id) where attribute_id=(第2步得到的 attribute_id)。这样就已经把第一步新建的产品属性更改为分类的属性了,这步做了之后再后台你还是看不到你刚才添加的那个属性的,还需要一个 步骤就是向eav_entity_attribute这个表中新增一条记录。

4.通过sql:insert into `eav_entity_attribute`(entity_type_id,attribute_set_id,attribute_group_id,attribute_id,sort_order) values(第3步得到的 entity_type_id,attribute_set_id(参照第5 步),attribute_group_id(参照第5步),attribute_id(第2步得到),sort_order(根据自己需要显示的顺序写 个值就行))。

5.如何得到 attribute_set_id 和 attribute_group_id:到网站后台分类管理的页面通过火狐或者谷歌浏览器查看元素的功能可以找到填写分类关键词那个属性的code值如 name="general[meta_keywords] ,这个meta_keywords值就是分类关键词的属性code了。通过第2步 就可以查到 meta_keywords这个code的attribute_id。通过这个attribute_id在表中 eav_entity_attribute 就可以查到相应的 attribute_set_id 和 attribute_group_id 。

6.刷新网站缓存 ok 在分类管理页面就可以看到刚才添加的那个属性了。

      7.获取分类自定义属性:     

<?php
$cat_attr = $_category->getAttributes();
if(array_key_exists('cus_category_id', $cat_attr)):
$_shortDescription=$cat_attr['cus_category_id']->getFrontend()->getValue($_category);
echo $_shortDescription;
endif;
?>

magento添加分类属性的更多相关文章

  1. Hexo使用攻略-添加分类及标签

    创建"分类"选项 生成"分类"页并添加tpye属性 打开命令行,进入博客所在文件夹.执行命令 hexo new page categories 成功后会提示: ...

  2. WPF整理-为User Control添加依赖属性

    依赖属性 ".NET properties are nothing more than syntactic sugar over set and get methods." 我们知 ...

  3. MVVM架构~knockoutjs系列之Mapping插件为对象添加ko属性

    返回目录 对于一个JS对象来说,如果希望将所有属性进行监视,在之前我们需要一个个对属性添加ko.observable方法,而有了Mapping插件后,它可以帮助我们这件事. 在Mapping出现之前 ...

  4. vue data对象添加新属性触发视图

    <template> <div class="wrap open"> <a>{{test01.name}}</a> <a> ...

  5. 【C#】使用IExtenderProvider为控件添加扩展属性,像ToolTip那样

    申明: - 本文适用于WinForm开发 - 文中的“控件”一词是广义上的说法,泛指包括ToolStripItem.MenuItem在内单个界面元素,并不特指继承自Control类的狭义控件 用过To ...

  6. cookie工具类,解决servlet3.0以前不能添加httpOnly属性的问题

    最近在解决XSS注入的问题,由于使用的servlet版本是2.5,不支持httpOnly的属性,故做了个工具类来实现cookie的httpOnly的功能.全类如下: /** * cookie工具类,解 ...

  7. struts2视频学习笔记 15-17 (访问或添加request属性,文件上传)

    课时15 访问或添加request/session/application属性 1.简单说 page指当前页面.在一个jsp页面里有效 2.request 指从http请求到服务器处理结束,返回响应的 ...

  8. 如何给ActiveX控件添加“事件”“属性”“标准事件”“自定义事件”等一些相关操作

    上一篇小编带大家熟悉了一下ActiveX的建立以及相关的概念,(http://blog.csdn.net/u014028070/article/details/38424611) 本文介绍下如何给控件 ...

  9. 为什么要在<button>元素中添加type属性

    在HTML中<button> 标签定义一个按钮. <button type="button">Click Me!</button> 在 butt ...

随机推荐

  1. express+nodecoffee写passport登录验证实例(二)

    二:实现登录认证 passport官网文档:  http://passportjs.org/guide/ passport验证使用一种被称为“策略”的方式来验证请求,策略支持3种类型的验证:用户名密码 ...

  2. Servlet视频学习笔记 57-58 (servlet入门和调用过程)

    网易云课堂<30天轻松掌握JavaWeb视频>servlet部分 课时57 servlet开发入门 servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术.S ...

  3. Cassandra——类似levelDB的基于p2p架构的分布式NOSQL数据库

    C: Consistency 一致性 • A: Availability 可用性(指的是快速获取数据) • P: Tolerance of network Partition 分区容忍性(分布式) 1 ...

  4. CentOS 常用命令大全(2)

    系统 # uname -a               # 查看内核/操作系统/CPU信息 # head -n 1 /etc/issue   # 查看操作系统版本 # cat /proc/cpuinf ...

  5. mke2fs/mks.etc3/fstab/mount指令

    一.mke2fs指令mkfs.etc3 /dev/sdb1指令 主要新学习 cat /etc/filesystem  //查看文件类型 mkfs. tab键有提示    //按照系统默认的值格式化 m ...

  6. 1800: [Ahoi2009]fly 飞行棋

    #include<cstdio> #include<iostream> using namespace std; ],n,ans; int main() { scanf(&qu ...

  7. Catalan数

    先看2个问题: 问题一: n个元素进栈(栈无穷大),进栈顺序为1,2,3,....n,那么有多少种出栈顺序? 先从简单的入手:n=1,当然只有1种:n=2,可以是1,2  也可以是2,1:那么有2种: ...

  8. [开发笔记]-控制Windows Service服务运行

    用代码实现动态控制Service服务运行状态. 效果图: 代码: #region 启动服务 /// <summary> /// 启动服务 /// </summary> /// ...

  9. IP数据报的格式

    1. IP数据报首部的固定部分中的各字段 ①版本:占4位,指IP协议的版本.通信双方使用的 IP协议版本必须一致.日前广泛使用的 IP协议版本号为 4 (即 IPv4). IPv6 目前还处于起步阶段 ...

  10. Diskpart使用说明

    [查看硬盘信息] 1.打开命令窗口 cmd 2.diskpart 命令进入Diskpart管理程式 3.list disk 查看硬盘信息   list partition 查看分区信息 [初使化硬盘] ...