我需要在Magento的州/省注册页面中有一个新的下拉菜单。反正有没有重复这个并在数据库中添加其他值?
谢谢
<div class="field">
<label for="region_id" class="required"><em>*</em><?php echo $this->__('State/Province') ?></label>
<div class="input-box">
<select id="region_id" name="region_id" title="<?php echo Mage::helper('core')->quoteEscape($this->__('State/Province')) ?>" class="validate-select" style="display:none;">
<option value=""><?php echo $this->__('Please select region, state or province') ?></option>
</select>
<script type="text/javascript">
//<![CDATA[
$('region_id').setAttribute('defaultValue', "<?php echo $this->getFormData()->getRegionId() ?>");
//]]>
</script>
<input type="text" id="region" name="region" value="<?php echo $this->escapeHtml($this->getRegion()) ?>" title="<?php echo Mage::helper('core')->quoteEscape($this->__('State/Province')) ?>" class="input-text <?php echo $this->helper('customer/address')->getAttributeValidationClass('region') ?>" style="display:none;" />
</div>
</div>
答案 0 :(得分:-1)
客户(个人)数据和客户地址数据的处理在Magento中分开。在注册页面上,客户应仅输入可能的最少信息来创建帐户。在客户获得帐户并登录后,他可以通过适当的状态下拉列表添加送货/帐单地址。
因此,如果您在注册页面上创建状态下拉列表,则没有可以保存此值的地址,因为客户对象没有任何状态字段...只有尚未创建的客户地址对象
<强>更新强> 如果您迫切需要在注册页面上下拉列表,则需要编写自己的模块,并将所有逻辑保存到数据库中,创建新地址等。
<强> UPDATE2:强>
文件app/design/frontend/base/default/template/customer/form/register.phtml
中有一个很好的示例,向您展示如何创建状态下拉列表。