好吧,我得到了cronjob的小问题。 如果有人看到它并且可以立即帮助我,那将会很棒。
情况: 需要重新索引以在广泛的产品操作过程中解决问题。
这是我的config.xml
<?xml version="1.0" encoding="UTF-8"?>
<config>
<modules>
<XXXXXXX_XXXXXXXX>
<version>x.xxx.xxx</version>
</XXXXXXX_XXXXXXXX>
</modules>
<global>
<models>
<rebuildindex>
<class>XXXXXXX_XXXXXXXX_Model_Index</class>
</rebuildindex>
</models>
</global>
<crontab>
<jobs>
<xxxxxxxx_rebuildindex>
<schedule><cron_expr>* * * * *</cron_expr></schedule>
<run><modul>rebuildindex/observer::build</modul></run>
</xxxxxxxx_rebuildindex>
</jobs>
</crontab>
</config>
这是我的班级:
<?php
class XXXXXXX_XXXXXXXX_Model_Index_Observer{
const CHECKTIME = 300;
public function build(){
Mage::log('build');
if(file_exists('pathtofile')){
$atime = (int)file_get_contents('pathtofile');
Mage::log($atime);
if($atime>0 && $atime<(time()-$this->CHECKTIME)){
@unlink('pathtofile');
$processCollection = Mage::getSingleton('index/indexer')->getProcessesCollection();
$processCollection->walk('reindexAll');
Mage::app()->cleanCache();
}
}
}
}
根据模型和内容存储在路径中。 但我得到的只是:
exception 'Mage_Core_Exception' with message 'No callbacks found' in /pathtomagento/app/Mage.php:594
Stack trace:
#0 /pathtomagento/app/code/core/Mage/Cron/Model/Observer.php(99): Mage::throwException('No callbacks fo...')
#1 /pathtomagento/app/code/core/Mage/Core/Model/App.php(1338): Mage_Cron_Model_Observer->dispatch(Object(Varien_Event_Observer))
#2 /pathtomagento/app/code/core/Mage/Core/Model/App.php(1317): Mage_Core_Model_App->_callObserverMethod(Object(Mage_Cron_Model_Observer), 'dispatch', Object(Varien_Event_Observer))
#3 /pathtomagento/app/Mage.php(447): Mage_Core_Model_App->dispatchEvent('default', Array)
#4 /pathtomagento/cron.php(45): Mage::dispatchEvent('default')
#5 {main}
我试图按照这个实现它:
http://inchoo.net/ecommerce/magento/creating-cron-script-in-magento/
但它根本不起作用