我经营的 Magento 商店有多种可下载产品,当人们购买其他产品或从其他地方获得我们的代金券时,有些产品会免费提供下载代码。
所以有 2 种情况,1. 人们只购买可下载的产品,使用 paypal 付款,或者 2. 人们免费下载产品,如果他们有优惠券的话。
虽然他们只是作为访客下载文件,而我们不需要账单信息,但对于许多人来说,输入账单信息是相当烦人的。
有没有人想过在人们只下载产品时删除帐单信息的方法?这意味着他们实际上只能使用电子邮件结账,就像在 bandcamp.com 等页面上所做的那样?
非常感谢您的想法。
最佳答案
你不会喜欢这个的。
我认为从 Magento 中删除账单地址是不可能的,而且成本不合理。
深度嵌入订单机制。
对于送货地址,这应该是开箱即用的。
如果您的订单中只有虚拟和可下载的产品,则送货地址和送货方式步骤不应出现在结帐中。
但如果你坚持这样做,我可以给你一些关于从哪里开始的指示。
首先,您需要修改 onepagecheckout Controller ,或者更好地编写自己的结账 Controller 来满足您的需求。
然后在 Mage_Sales
和 Mage_Checkout
模块中查找文本 getBillingAddress
和 setBillingAddress
并处理这些值可以的情况为空。
这里有一个例子可以更好地理解我在说什么。
在订单模型的 sendNewOrderEmail
方法中有这个
$customerName = $this->getBillingAddress()->getName();
如果帐单地址为空,您需要更改此设置。如果它不为空,让它像现在一样工作。
关于php - Magento - 购买可下载产品时删除账单和运输信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26140422/