结束促销后删除文章

时间:2015-10-11 08:42:32

标签: prestashop prestashop-1.6

我是Prestashop的初学者,我想修改我的网站。如果促销结束已过时,我想自动删除产品。 对于特别优惠(促销),结束日期使用$product.specific_prices.to编写。

我想删除此变量的日期等于当前日期的文章。但我不知道怎么做...在模板中?例如:

{if ($smarty.now|date_format:'%Y-%m-%d %H:%M:%S' <= $product.specific_prices.to) && ($product.specific_prices.to != '0000-00-00 00:00:00')}

在DB中触发?

CREATE EVENT IF NOT EXISTS `Clean_End_Promotion`
    DELETE FROM products
    WHERE promo_date == NOW() //but I don't which table I can use

使用PHP文件?我不知道哪种方式最好。

谢谢!

1 个答案:

答案 0 :(得分:0)

这个怎么样?创建一个新的自定义PHP文件(包括init; config.php文件以访问数据库或写连接)。

$today = date("Y-m-d H:i:s"); 
$sql = 'SELECT id_product FROM `'._DB_PREFIX_.'specific_price` WHERE to >= '.$today;
$result = Db::getInstance()->execute($sql);

Foreach ($result as $res) {
$prod = new Product($res);
$prod->delete();
}

我不知道我没有测试它,我从未使用删除功能,但检查产品类了解更多信息。 Product-&gt; delete应删除所有表中的所有数据。