是否可以从访客结帐中排除增值税号字段,同时将增值税号码作为注册客户的必填字段? 我们正在使用Magento 1.7的欧洲增值税验证模块。
答案 0 :(得分:0)
我快速浏览了Magento XML文件以获取增值税。我认为你不能指定它取决于登录和未登录,因为它似乎是app/code/core/Mage/Checkout/checkout/etc/config.xml
中设置的字段。
实际上app/design/frontend/base/default/template/checkout/onepage/billing.phtml
的第74行(Magento 1.7.0.0)看起来很有趣:
<?php if ($this->helper('customer/address')->isVatAttributeVisible()) : ?>
我建议修改
<?php if ($this->helper('customer/address')->isVatAttributeVisible() && $this->isCustomerLoggedIn()) : ?>
您需要做的就是将修改后的checkout / onepage / billing.phtml放在模板路径中。 (第152行<?php if ($_taxvat->isEnabled()): ?>
也可能相关。)
如果您对登录用户和已注销用户的要求非常不同,那么您可能需要制作全新的模板,每个状态一个,并使用local.xml来控制显示的内容:
<layout>
<!-- ... -->
<customer_logged_out>
<reference name="checkout.onepage.billing">
<action method="setTemplate"><template>checkout/onepage/billingloggedout.phtml</template></action>
</reference>
</customer_logged_out>
<customer_logged_in>
<reference name="checkout.onepage.billing">
<action method="setTemplate"><template>checkout/onepage/billingloggedin.phtml</template></action>
</reference>
</customer_logged_in>
<!-- ... -->
</layout>
但为结帐创建新区块可能并不简单(您可能需要使用引用name="billing"
而不是引用name="checkout.onepage.billing"
)。