我们正在实施一项小功能,以便更新产品的新产品#34;和"到"日期。为了实现这一点,我们通过用户输入采用日期,例如" m / d / Y"。但是这些日期并不能保存任何类型的产品。
我们尝试了很多次,但每次都失败了。
以下是解决方案,我们尝试保存日期:
假设我们的产品是"来自"和"到"日期分别为2015年3月30日和2015年5月4日。产品ID是937.现在,我们尝试过:
第一个解决方案:
$product = Mage::getModel('catalog/product')->load(937);
$product->setNewsFromDate('03/30/2015');
$product->setNewsToDate('04/05/2015');
$product->save();
第二个解决方案:
$product = Mage::getModel('catalog/product')->load(937);
$product->setData('news_from_date','03/30/2015');
$product->setData('news_to_date','04/05/2015');
$product->save();
第3个解决方案:
$product = Mage::getModel('catalog/product')->load(937);
$product->setData('news_from_date','2015-03-30 00:00:00');
$product->setData('news_to_date','2015-04-05 00:00:00');
$product->save();
我们已经尝试了上述所有步骤,但我的日期并没有为相应的产品保存。有了Ist点,我们已经保存了产品的特殊产品和#34;和"到"日期和此工作正常但不是产品的新日期。
任何人都可以请求帮助,我们如何保存新日期?我们在上述解决方案中做错了什么因为结果日期没有保存?
等待解决方案。
答案 0 :(得分:0)
您可以将其用作独立的外部文件,也可以根据需要对其进行自定义:
umask(0);
Mage::app( 'admin' );
$sProductId = 1;
$oProduct = Mage::getModel( 'catalog/product' )->load( $sProductId );
$oDate = new Zend_Date( strtotime( 'now' ) );
$sFormattedDate = $oDate->toString( Varien_Date::DATETIME_INTERNAL_FORMAT );
$oProduct->setData( 'news_from_date', $sFormattedDate );
$oProduct->setData( 'news_to_date', $sFormattedDate );
$oProduct->save();