magento v1.9目录价格规则有时不起作用

时间:2016-04-26 19:20:46

标签: magento catalog discount promotions

我们正在使用Magento 1.9.2.3版。我们根据用户的群组和产品的自定义属性设置了购物车价格规则。它有时不起作用。而且我不确定是否有原因。我不能真正复制这个问题,因为它是开启和关闭的问题类型。

用户抱怨它没有获得折扣,我可以从订单中验证它,但如果我手动为特定用户添加相同的订单,那么我会看到折扣。

有没有人遇到过这个问题。我将非常感谢您对此的帮助

感谢。

2 个答案:

答案 0 :(得分:0)

目录价格规则需要Cron工作。安装此extension并检查cron是否正常工作。 如果它正在工作,请检查您的默认存储时区是否与您的服务器时区匹配。

enter image description here

信用: @Alexei Yerofeyev

如果两个时间都相同,那么这是Magento中的一个错误(或者超出我的理解的一些逻辑)。我们遇到了同样的问题。当Magento在前端显示产品时,它会检查此日期是否有目录规则。此检查所用的日期是您当地的,因此在我们的情况下,它是GMT + 5。但是,在应用目录规则时,它使用GMT日期。这意味着我们无法在凌晨5点之前应用规则。

问题出在 Mage_CatalogRule_Model_Action_Index_Refresh :: execute()函数中。您必须在扩展中或通过文件的本地版本重写此函数/类。

我们更换了第121行:

$timestamp = $coreDate->gmtTimestamp('Today');

这一行:

$timestamp = Mage::app()->getLocale()->date(null, null, null, true)->get(Zend_Date::TIMESTAMP);

之后它对我们有用。

如果这对你有效,那么

使用AOE计划程序扩展程序,将catalogrule_apply_all cron表达式从0 1 * * *更改为30 */6 * * *,它可能适合您。

如果可能,请检查已应用折扣的订单时间,您可能需要查找价格规则不起作用的确切时间。 Temparary修复程序在它不工作时再次单击“应用目录规则”按钮。

答案 1 :(得分:0)

在一家商店,我们遇到了这个问题,有时目录价格规则不起作用,但大多数时候它工作正常(即使是在同一天或同一时间内同一产品!)。由于catelogrule价格是正确的(数据库表填充了正确的日期和产品ID以及正确的价格),因此很难重现。

我们已经使用额外的扩展来确保规则每天都应用并且仍然面临问题......

但是几周之后我们发现了一种模式:事实证明只有在通过后端/管理员发出订单时才会发生这种情况。 Magento中有一个鲜为人知的错误,在本博客中有很好的描述:

http://www.techytalk.info/catalog-price-rules-not-applied-creating-order-magento-admin/

希望它可以帮到某人!