magento 为用户注册增加一个字段(转)

步骤 I. 加一个occupation/title字段到用户注册页,差不多在register.html的54行,在email下方加一个Occupation显示代码

代码:
<li>
<div class="input-box">
<label for="email_address"><?php echo $this->__(‘Email Address‘) ?> <span class="required">*</span></label><br/>
<input type="text" name="email" id="email_address" value="<?php echo $this->htmlEscape($this->getFormData()->getEmail()) ?>" title="<?php echo $this->__(‘Email Address‘) ?>" class="validate-email required-entry input-text" />
</div>
<div class="input-box">
<label for="occupation"><?php echo $this->__(‘Occupation/Title‘) ?></label><br/>
<input type="text" name="occupation" id="occupation" value="<?php echo $this->htmlEscape($this->getFormData()->getOccupation()) ?>" title="<?php echo $this->__(‘Occupation‘) ?>" class="input-text" />
</div>
</li>

这是,如果进入用户注册页, 就会看到新增的字段。

步骤 2 同样在edit.phtml中,加入Occupation显示块

代码:
<li>
<div class="input-box">
<label for="email"><?php echo $this->__(‘Email Address‘) ?> <span class="required">*</span></label><br />
<input type="text" name="email" id="email" value="<?php echo $this->htmlEscape($this->getCustomer()->getEmail()) ?>" title="<?php echo $this->__(‘Email Address‘) ?>" class="required-entry validate-email input-text" />
</div>
</li>
<li>
<div class="input-box">
<label for="occupation"><?php echo $this->__(‘Occupation‘) ?> </label><br/>
<input type="text" name="occupation" id="occupation" value="<?php echo $this->htmlEscape($this->getCustomer()->getOccupation()) ?>" title="<?php echo $this->__(‘Occupation‘) ?>" class="input-text" />
</div>
</li>

步骤 3, 打开Model/Entity/Setup.php差不多在93行,email的下方,加入occupation的相关代码:

代码:
‘email‘ => array(
‘type‘ => ‘static‘,
‘label‘ => ‘Email‘,
‘class‘ => ‘validate-email‘,
‘sort_order‘ => 60,
),
‘occupation‘ => array(
‘label‘ => ‘Occupation‘,
‘required‘ => false,
‘sort_order‘ => 65,
),

步骤4: 现在,代码就基本写好了 , 但是我们仍然需要执行一个数据库操作将occupation这个属性加入到eav_attribute表,把下面的代码块:

代码:
<?php
$setup = new Mage_Eav_Model_Entity_Setup(‘core_setup‘);
$AttrCode = ‘occupation‘;
$settings = array (
‘position‘ => 1,
‘is_required‘=> 0
);
$setup->addAttribute(‘1‘, $AttrCode, $settings);
?>

放到合适的文件里执行一次。我建议把它放到register.html文件的顶部,然后重新访问register.html.查看数据库eav_attribute表就能看到新增的条目。然后把上面的代码从register.phtml中移除。

步骤 5: 最后需要编辑app/code/core/Mage/Customer/etc/config.xml 的<fieldsets>标签下声明该字段如何处理插入和贵呢更新

代码:
<fieldsets>
<customer_account>
.....
<occupation><create>1</create><update>1</update></occupation>
</customer_account>
</fieldsets>
时间: 2024-09-27 12:53:47

magento 为用户注册增加一个字段(转)的相关文章

android源码中,在系统多媒体数据库中增加一个字段

由于项目需求,在系统多媒体管理数据库里的存储图像文件的表中需要新增加一个字段,源码在:项目\packages\providers\MediaProvider\MediaProvider.java下,在updateDatabase()方法里,你会发现images表格是由files创建的一个视图,于是,在files的创建里增加了一个字段,如下: .... db.execSQL("CREATE TABLE files (" + "_id INTEGER PRIMARY KEY AU

SQLServer在多个表中都增加一个字段的方法

1.使用游标 declare @sql varchar(200), @name varchar(40) declare my_cursor scroll cursor for select name from sysobjects where type = 'u' and name like 'jobs_%' open my_cursor fetch next from my_cursor into @name while(@@fetch_status=0) begin print 'proce

扩展User增加部门字段

通过继承User<TEntity>类增加一个字段 /// <summary>用户信息</summary> [Serializable] [ModelCheckMode(ModelCheckModes.CheckTableWhenFirstUse)] [BindIndex("IX_User_DepartmentId", false, "DepartmentId")] [BindRelation("DepartmentId&

MySQL中的表中增加删除字段

1增加两个字段: [sql] view plaincopy mysql> create table id_name(id int,name varchar(20)); Query OK, 0 rows affected (0.13 sec) mysql> alter table id_name add age int,add address varchar(11); Query OK, 0 rows affected (0.13 sec) Records: 0  Duplicates: 0  

如何在magento后台增加一个自定义订单状态

magento后台订单状态(order status)只有Pending.Processing.On Hold.Closed.Canceled.Pending Payment 等等,如何在magento后台增加一个自定义订单状态呢?下面最模板以增加一个”On Shipping” 为例: 1.首先你需打开app/code/core/Mage/Sales/etc/config.xml 文件找到大概第545行,在之间插入一行自定义状态代码: <statuses> <pending transl

Magento产品描述页增加一个客户评价(Customer Reviews)的tab标签。

产品描述页默认有产品详细情况及让客户增加产品标签这二个tabs,要做到淘宝那样显示客户评价,我找到以下方法增加一个客户评价tab: 1. 打开模版路径 layout 目录下的 review.xml 文件, 在页面最下的</layout>之上,添加如下代码: <catalog_product_view> <reference name="product.info.tabs"> <block type="review/form"

给zencart产品增加新字段

经常遇到一些产品具有很丰富的信息,可zencart后台添加产品的时候,就只有那么几个字段.例如产品model,产品库存等等. 想给某个产品定制一个像magento一样的短描述功能,或者想显示该产品在亚马逊上的链接. 这个方法就派上用场了. 我这里讲的就是如何给产品添加一个product_color字段. 1,先去phpmyadmin,找到你网站的数据库,然后找到products表,给该表添加一个product_color字段,不会用sql语句的可手动添加. 2,编辑文件admin/include

thinkjs&mdash;&mdash;一个字段一种数字代表两种状态

问题来源: 现有一张company数据表,其中有一个字段state(-2:待审核:-1:禁用:0:正常:1:会员过期:),一般而言,在前期设计数据表的时候,会将每种状态下都用一种特定的数字代表,但是这里起初并没有将-2代表的待审核和拒绝状态分开,即-2代表着两种状态:待审核以及拒绝.现要求在字段state不增加值的情况下,根据company中的另外一个字段refuse是否为空来区分是待审核或者是拒绝. 分析: 拿到需求,先分析一下:在原来-2的基础之上,在查询条件中增加refuse条件即可. 解

ECSHOP 商品字段增加新字段的方法

结合ecshop后台“商品编辑”.“商品录入”来谈谈如何给ecshop商品增加一个新字段,假设我们将这个新字段命名为 new_add 1.首先要修改数据表结构,给表 ecs_goods 增加新字段:new_add, 进入ECSHOP后台 >数据库管理 >SQL查询,输入下面SQL语句,提交.注意如果你的数据表前缀不是ecs_ 请自行修改之 alter table ecs_goods add column new_add varchar(64); 2.在ecshop后台的admin\templa