5

在询问编写代码以让 Magento 为新的电子邮件订阅者生成随机优惠券代码之前,我一直在这里 -创建单个随机 Magento 优惠券

这段代码运行良好,对那些帮助过我的人我永远感激不尽。我现在正在寻找一种方法来删除这些优惠券,因为它们以批量方式过期,因为通过 Magento 管理员单独删除它们是一个巨大的痛苦。从下图可以看出,在几天的时间里,我们生成了 300 多张优惠券(现在都已过期)。

在此处输入图像描述

修改上面链接(来自我的原始问题)中详述的创建优惠券代码会起作用吗?就像是:

$model = Mage::getModel('salesrule/rule')
       $model->getName('New newsletter subscriber discount');
       $model->getToDate(date('Y-m-d'));
$model->delete();

还是我在这里完全吠错了树?

4

1 回答 1

9

很抱歉回答我自己的问题,但几乎在我发布后,我就能弄清楚。因此,如果其他人有像我这样的问题:

ini_set('auto_detect_line_endings', true);

// Requires Mage
require_once('../../app/Mage.php');

//Initializes Mage
Mage::app('default');
deleteCoupon();

function deleteCoupon() {
  $collection = Mage::getModel('salesrule/rule')->getCollection()->load();

  foreach($collection as $model) {

    // Delete all new newsletter sub coupons
    if ($model->getName() == 'New newsletter subscriber discount') {

    // Delete all coupons expiring today    
    if ($model->getToDate() == date('Y-m-d')) { 
      $model->delete();
      echo "Deleted <br />";
    } else {
      echo "No coupons found! <br />"; 
    }
  }
}
于 2012-10-30T22:44:30.433 回答