Magento-在默认注册表单上添加一个字段

时间:2012-07-16 08:59:44

标签: magento

我正在使用Magento v1.7.0.2并试图在注册表单上添加一个Mobile字段。我修改了代码(参见下面的代码)。但是,移动字段仍未显示在注册表单中。

有没有人可以帮助我?提前谢谢!

应用\等\模块\ Mydons_Customer.xml

<config>
    <modules>
        <Mydons_Customer>
        <codePool>local</codePool>
        <active>true</active>
        </Mydons_Customer>
    </modules>
</config> 

应用\代码\本地\ Mydons \顾客\等\ config.xml中

<?xml version="1.0"?>
<config>
    <modules>
        <Mydons_Customer>
            <version>1.7.0.0</version>
        </Mydons_Customer>
    </modules>
    <global>
        <fieldsets>
            <customer_account>
                <mobile><create>1</create><update>1</update></mobile>
            </customer_account>
        </fieldsets>
        <models>
            <Mydons_Customer>
                <class>Mydons_Customer_Model</class>
            </Mydons_Customer>
        </models>
        <helpers>
            <Mydons_Customer>
                <class>Mydons_Customer_Helper</class>
            </Mydons_Customer>
        </helpers>
        <resources>
            <customerattribute_setup>
                <setup>
                    <module>Mydons_Customer</module>
                    <class>Mydons_Customer_Model_Entity_Setup</class>
                </setup>
            </customerattribute_setup>
        </resources>
    </global>
</config> 

应用\代码\本地\ Mydons \客户\模型\实体\ Setup.php

class Mydons_Customer_Model_Entity_Setup extends Mage_Customer_Model_Entity_Setup
{
    public function getDefaultEntities(){

        return array(

                'mobile'=>array(
                        'type'=> 'static',
                        'label'=> 'Mobile',
                        'visiable' => true,
                        'required' => true,
                        'sort_order' => 80,
                )
        );
    }
} 

应用\代码\本地\ Mydons \客户\ SQL \ customerattribute_setup \ mysql4安装-0.1.0.php

   $installer = $this;

    $installer->startSetup();


    $installer->addAttribute('customer', 'mobile', array(
        'label' => 'Mobile',
        'visible' => 1,
        'required' => 1,
        'position' => 1,
        'sort_order' => 80,        
    ));


    $installer->endSetup();

    $customer = Mage::getModel('customer/attribute')->loadByCode('customer', 'mobile');
    $forms= array('customer_account_edit', 'customer_account_create', 'adminhtml_customer', 'checkout_register');
    $customer->setData('used_in_forms', $forms);
    $customer->save(); 

1 个答案:

答案 0 :(得分:2)

您需要修改相应的模板,以便在注册表中添加所需的字段 在这种情况下,customer/form/register.phtmlpersistent/customer/form/register.phtml