Я не буду делать одну минуту в cron-работе в magento, поэтому у меня есть ниже информация
http://www.magentocommerce.com/wiki/1_-_installation_and_configuration/how_to_setup_a_cron_job
так что с помощью вышеизложенного я сделал новые модули для этой установки cron, эти модули активны и отображаются в админ-панели magento, но cron не запускается
мой код для файла конфигурации:
<?xml version="1.0"?>
<config>
<modules>
<Apprika_Cron>
<active>true</active>
<codePool>local</codePool>
</Apprika_Cron>
</modules>
<crontab>
<jobs>
<Apprika_Cron>
<schedule>
<cron_expr>*/1 * * * *</cron_expr>
</schedule>
<run>
<model>Cron/Observer::setLifeCycleStatus</model>
</run>
</Apprika_Cron>
</jobs>
</crontab>
</config>
и созданная мной модель в C: \ xampp \ htdocs \ ce \ app \ code \ local \ Apprika \ Cron \ Model \ Observer.php
код для этого
class Apprika_Cron_Model_Observer extends Mage_Core_Model_Abstract
{
public function _construct()
{
parent::_construct();
$this->setLifeCycleStatus();
}
public function setLifeCycleStatus()
{
$products = Mage::getModel('catalog/product');
$live_concluded=$this->getProductInfoforLifecycle();
$product = Mage::getModel('catalog/product');
if(count($live_concluded)>0){
foreach($live_concluded as $status=>$value)
{
if($status=='live')
{
for($i=0;$i<count($value);$i++)
{
$productId=$value[$i];
if($productId)
{
try
{
$product->load($productId);
$product->setData('offer_stage','3');
$product->save();
}catch(Exception $e)
{
Mage::printException($e);
}
}
}
}
if($status=='concluded')
{
for($j=0;$j<count($value);$j++)
{
$productId=$value[$j];
if($productId)
{
try
{
$product->load($productId);
$product->setData('offer_stage','4');
$product->save();
}catch(Exception $e)
{
Mage::printException($e);
}
}
}
}
}
}
}
public function getProductInfoforLifecycle()
{
$products = Mage::getModel('catalog/product')
->getCollection()
->addAttributeToSelect('*');
$current_date=Date('Y-m-d H:i');
$current_date_ts=strtotime($current_date);
$productarr=array();
foreach($products as $product)
{
$offer_stage=$product->getOffer_stage();
$offer_start_date= $product->getOffer_start_date();
$offer_start_date_ts=strtotime($offer_start_date);
$offer_end_date= $product->getOffer_end_date();
$offer_end_date_ts=strtotime($offer_end_date);
$entity_id=$product->getEntity_id();
if($offer_stage==2 && $offer_start_date!="" && $offer_end_date!="" && $offer_start_date_ts <=$current_date_ts)
{
$productarr['live'][]=$entity_id;
}if($offer_stage==2 && $offer_start_date!="" && $offer_end_date!="" && $offer_end_date_ts <=$current_date_ts)
{
$productarr['concluded'][]=$entity_id;
}
}
return $productarr;
}
}
но этот cron не вызывается, поэтому эти записи не обновляются
если я позвоню http://xyz.com/cron.php
затем записи обновляются, но с помощью записей хрон не обновляются
Заранее спасибо