我使用这个出色的网站建立了我自己的Magento模块,其中包含额外的客户地址字段; http://silksoftware.com/magento-module-creator
我创建了一个名为“mycarmake”的新客户地址属性。我可以在管理面板中查看,编辑和保存属性,没问题。
但是我在将其添加到结帐时遇到了更多麻烦。我已将此字段添加到app / design / default / TEMPLATE_NAME / persistent / checkout / onepage / billing.phtml但它不会保存到客户地址记录 - 有人可以给我一个指针,说明它为什么不起作用吗?
<!-- add fields here -->
<li class="fields">
<div class="field">
<label for="billing:mycarmake"><?php echo $this->__('My Car Make') ?></label>
<div class="input-box">
<input type="text" id="billing[mycarmake]" name="billing[mycarmake]" value="<?php echo $this->htmlEscape($this->getAddress()->getMycarmake()) ?>" title="<?php echo $this->__('My Car Make') ?>" class="input-text" />
</div>
</div>
</li>
<!-- end add fields here -->
我还将此添加到我的模块的etc / config.xml中;
</resources>
<fieldsets>
<sales_copy_order_billing_address>
<mycarmake><to_order>*</to_order></mycarmake>
</sales_copy_order_billing_address>
<sales_copy_order_shipping_address>
<mycarmake><to_order>*</to_order></mycarmake>
</sales_copy_order_shipping_address>
<sales_convert_quote_address>
<mycarmake><to_order_address>*</to_order_address><to_customer_address>*</to_customer_address></mycarmake>
</sales_convert_quote_address>
<sales_convert_order_address>
<mycarmake><to_quote_address>*</to_quote_address></mycarmake>
</sales_convert_order_address>
<customer_address>
<mycarmake><to_quote_address>*</to_quote_address></mycarmake>
</customer_address>
<checkout_onepage_billing>
<mycarmake><to_customer>*</to_customer></mycarmake>
</checkout_onepage_billing>
</fieldsets>
答案 0 :(得分:0)
管理员&gt;客户&gt;属性&gt;管理客户地址属性
查看 mycarmake 属性,确保在前端显示设置为Yes
答案 1 :(得分:0)
以下代码将向billing.phtml
文件添加文本字段。如果您使用的是magento 1.6( - ),则需要编辑文件checkout/onepage/billing.phtml
,使用magento 1.6(+)的文件persistent/checkout/onepage/billing.phtml
。打开phtml文件,找到代码
<?php if ($this->canShip()): ?>
并在该行上方添加以下内容
<li class="fields">
<div class="field">
<label for="billing:ssn" class="required"><em>*</em><?php echo $this->__('SSN') ?></label>
<div class="input-box">
<input type="text" name="custom[ssn]" value="<?php echo $this->htmlEscape($this->getQuote()->getSsn()) ?>" title="<?php echo $this->__('SSN') ?>" class="input-text required-entry" id="billing:ssn" />
</div>
</div>
</li>
希望它能解决您的问题。