【问题标题】:How to block free shipping method in frontend only in magento如何仅在magento中阻止前端的免费送货方式
【发布时间】:2011-09-29 08:03:44
【问题描述】:

我处于紧张状态。我落后了超过 1 天。有没有办法阻止在结帐页面显示免费送货方式,但在管理面板页面上显示。

例如:我购买的产品支付运费的运输方式。但它没有交付,在这种情况下,通过管理面板,管理员可以重新订购相同的报价,免费和运费,所以免费送货方式应该显示在管理面板中。但是当我启用它时,它也会显示在前端,所以我怎样才能在前端(客户结帐)阻止免费送货,但在管理面板中保持启​​用。

我很抱歉英语不好。我想,我提供给你的例子让问题很清楚。

提前致谢。

【问题讨论】:

  • 您能否更具体一些或给出一个代码示例?我不擅长 php,这种免费送货对我来说让客户自己选择是非常不合逻辑的。

标签: magento


【解决方案1】:

可以,只需编辑运输方式模板并通过运输方式代码设置if条件或扩展运输方式并将isActive方法设置为不同的前端和后端

【讨论】:

  • 谢谢,安东;请您提供我可以找到运输方式模板的路径。
  • 感谢 Anton,经过长时间的搜索,我发现仅在前端阻止免费送货。在 app/code/core/Mage/Shipping/Model/Carrier/Freeshipping.php 中,在 collectRates(Mage_Shipping_Model_Rate_Request $request) 方法中,我提供了管理页面的商店 ID显示,我已经阻止了前端运输。
  • 在同一个方法中实现 public isActive(
  • 有趣的是,当订单价值大于 1 美元时,这个方法似乎有效。当我们输入 0(免费)的内部订单时,不显示免费送货选项
  • 不知何故仍然无法正常工作:stackoverflow.com/questions/9941784/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-05-31
  • 1970-01-01
  • 2014-03-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多