Magento v1.7.0.2を使用していて、登録フォームにモバイルフィールドを追加しようとしました。コードを修正しました(下記のコードを参照)。ただし、モバイルフィールドはまだ登録フォームに表示されていません。
誰か助けてくれる人はいますか?前もって感謝します!
app \ etc \ modules \ Mydons_Customer.xml
<config>
<modules>
<Mydons_Customer>
<codePool>local</codePool>
<active>true</active>
</Mydons_Customer>
</modules>
</config>
app \ code \ local \ Mydons \ Customer \ etc \ 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>
app \ code \ local \ Mydons \ Customer \ Model \ Entity \ 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,
)
);
}
}
app \ code \ local \ Mydons \ Customer \ sql \ customerattribute_setup \ mysql4-install-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();