gpt4 book ai didi

Magento 目录价格规则在晚上消失

转载 作者:行者123 更新时间:2023-12-04 01:30:28 25 4
gpt4 key购买 nike

我在 magento 平台上开发了在线商店。除了用于销售的目录价格规则外,一切正常。我创建了一个简单的规则,对所有产品应用 15% 的折扣。当我保存并应用规则时,它可以正常工作一整天。但在晚上 12 点之后,销售就不再可见了。我试图通过单击应用规则来应用管理面板中的规则,但在晚上它甚至不允许我手动应用规则。我可以在第二天早上应用规则,它工作正常,但再次到上午 12 点。

我尝试了以下方法。
我已经去掉了在产品上单独定义的特殊价格,所以销售只通过价格规则来实现。
我已经设置了 cron 工作,但它在晚上也不起作用。
我已经检查了规则的日期和时间。

我发现这可能是因为时间设置。我正在使用 GMT+5。有什么办法可以让规则日夜有效。

谢谢

最佳答案

是的,这是 Magento 中的一个错误(或一些超出我理解的逻辑)。当 Magento 在前端显示产品时,它会检查此日期是否有目录规则。用于此检查的日期是您本地的日期,因此在您的情况下为 GMT+5。但是,当应用目录规则时,它使用 GMT 日期。这意味着您要到凌晨 5 点才能应用规则。

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

文件位置:app/code/core/Mage/CatalogRule/Model/Action/Index/Refresh.php
您必须替换第 121 行:

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

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

之后,您应该能够应用规则。

关于Magento 目录价格规则在晚上消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25280095/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com