我一直在这里询问编写代码以让Magento为新的电子邮件订阅者生成随机优惠券代码 - Creating a single random Magento coupon
这段代码完美无缺,对于那些帮助我永远感激的人。我现在正在寻找一种方法来删除这些优惠券,因为它们以批量方式过期,因为通过Magento管理员单独删除它们是一个巨大的痛苦。从下图中可以看出,在几天的时间内,我们生成了300多张优惠券(现已全部到期)。
修改上面链接中详细说明的创建优惠券代码(来自我的原始问题)?类似的东西:
$model = Mage::getModel('salesrule/rule')
$model->getName('New newsletter subscriber discount');
$model->getToDate(date('Y-m-d'));
$model->delete();
或者我在这里完全咆哮错误的树?
答案 0 :(得分: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 />";
}
}
}