【问题标题】:catalog price rules will not work after mid night in magento site目录价格规则在 magento 网站午夜后将不起作用
【发布时间】:2015-05-15 05:11:53
【问题描述】:

我们在 1.9.0 中遇到了目录价格规则问题

我们在一个网站上上传了1000 产品。

在目录价格规则为500 产品提供折扣后,目录价格规则没有日期限制。这些特价只显示到午夜。

第二天,午夜过后,网站上不会显示特价。

cron 工作正常。

请帮我找到一些解决方案。

【问题讨论】:

    标签: magento cron


    【解决方案1】:

    这个问题只为我解决了这个:

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

    您必须在此处替换第 121 行:

    app/code/core/Mage/CatalogRule/Model/Action/Index/Refresh.php
    
    $timestamp = $coreDate->gmtTimestamp('Today');
    

    用这一行:

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

    查看原帖: https://magento.stackexchange.com/questions/67970/catalog-price-rules-disappear-after-mid-night

    【讨论】:

      【解决方案2】:

      第 1 步:
      请确保 Cron 工作正常。为此,您可以安装 AOE Scheduler 扩展。

      第 2 步:
      您需要通过调试 magento 表来调试问题。以下表格用于目录规则:

      catalogrule
      catalogrule_affected_product
      catalogrule_customer_group
      catalogrule_group_website
      catalogrule_product
      catalogrule_product_price
      catalogrule_website
      

      您可以删除所有目录规则并为一种产品创建一个规则并检查下表:

      catalogrule_product - 在此表中,Magento 将管理所有客户组的所有产品折扣百分比。
      catalogrule_product_price - 在此表中,Magento 将管理每个产品的折扣最终价格。在这里,magento 将为每条记录插入三天的记录。您可以通过“rule_date”字段进行检查。

      如果它工作得很好。然后再次删除所有目录规则后,请从 MySQL 中截断以下表。

      catalogrule_product
      catalogrule_product_price 
      

      由于许多记录主键达到最大限制,并通过为 500 个产品创建规则重试。希望它会开始工作。

      希望有帮助!!

      【讨论】:

      • 非常感谢您的回复,请在此处查看:prntscr.com/75e1fb 我使用了此扩展程序:magentocommerce.com/magento-connect/aoe-scheduler.html 我收到了如图所示的消息。我希望 cron 工作正常。如果是这样,请通知我。我现在看看第2步......
      • 是的,cron 工作正常。如果答案对您有用,请接受并投票给答案,以便其他人也能从中受益。
      • 是的,我肯定会这样做...... cron 工作正常,但目录价格规则出现问题。由于这是一个实时站点,我真的无法禁用所有目录价格规则并仅对一种产品应用目录价格规则。
      • 这是 catalogrule_product_price 表:prntscr.com/75e80b你能检查一下有什么问题吗?
      • 在上图中显示,它正在申请所有 3 天,但是为什么它在午夜后消失,请帮助解决这个问题......
      【解决方案3】:

      正如@Davi-Reinoldo 所说,问题出在索引器上。

      我也遇到过这个问题,当本地时区的偏移量大于 +01:00 时就会出现问题。

      基本上只是因为 magento 使用 gmtTimestamp 作为规则日期,在上述情况下导致前一天。

      为此我开发了一个小模块https://github.com/Chuvisco88/Chuvisco_CatalogRuleFix 来解决这个问题。 如果有人遇到过这个问题,请尝试一下。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-05-26
        • 1970-01-01
        • 1970-01-01
        • 2014-06-18
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多