无法为Magento中的数据量应用目录价格规则

时间:2014-11-07 10:06:36

标签: magento magento-1.7

我遇到了让Magento商店应用目录价格规则的问题。我的数据库是拥有200000个产品的huze,我正在尝试对商店中的大多数产品应用全球折扣。

我们已经设定了价格规则,但是当不能应用它时,它只是旋转,旋转和挂起,而不应用任何价格。我尝试使用下面给出的一些自定义代码来完成它:

我遵循的步骤如下:

我创建了一个名为rule apply的文件和下面的代码:

<?php 
ini_set('display_errors', 1);
error_reporting(E_ALL);
set_time_limit(0);
ini_set("memory_limit","1024M");

// Let's include mage.php file
require_once 'app/Mage.php';
umask(0);

// Initialize the magento
Mage::app('default');

Mage::app()->setCurrentStore(Mage_Core_Model_App::ADMIN_STORE_ID);

        try {
            Mage::getModel('catalogrule/rule')->applyAll();
            Mage::app()->removeCache('catalog_rules_dirty');
            echo Mage::helper('catalogrule')->__('The rules have been applied.');
        } catch (Exception $e) {
            echo Mage::helper('catalogrule')->__('Unable to apply rules.');
            print_r($e);
        }

?>

我已经使用ssh运行此文件但超过8小时后显示错误:已损坏的管道。

请建议我如何做到这一点。

由于

1 个答案:

答案 0 :(得分:0)

如果您想应用特定规则而不是cna,请执行以下操作:

<?php 
    $catalogPriceRule = Mage::getModel('catalogrule/rule')->load(7);
    $catalogPriceRule->applyAll();
?>

或者,如果你想要比你在下面所做的那样适用规则:

<?php
    $catalogPriceRuleCollection = Mage::getModel('catalogrule/rule')->getCollection();
    foreach($catalogPriceRuleCollection as $ruleobj)
    {
       $ruleobj->applyAll();
    }
?>