设置单个优惠券的到期日期


9

我想创建优惠券代码,我还需要设置到期日期。Magento提供仅设置促销规则的到期日期,并且会影响该规则内的所有优惠券。无论如何,数据库表salesrule_coupon中也有一个字段,expiration_date但似乎该字段没有在任何地方使用。

是否有人成功为单个优惠券设置了有效期?否则,我认为正确的唯一方法是创建观察者,观察者将观察输入的优惠券代码,并在优惠券过期时删除该优惠券,从而使优惠券代码在应用之前无法使用。

任何想法表示赞赏。

Answers:


1

我没有找到任何解决方案,但是我使用了另一种方法来实现它。

  1. 创建规则,该规则将始终在日期之前过期。
  2. 基于cron将基于条件的优惠券代码推送到它。

码:

$couponCode = 'XZY';//auto-generated code or get collection of auto-generated               codes from a rule.
$oCoupon = Mage::getModel('salesrule/coupon')->load($couponCode, 'code');

$ruleName = 'referral_expired'; //existing rule with this name
$shoppingRule = Mage::getResourceModel('salesrule/rule_collection')->addFieldToFilter('name',$ruleName)->load()->getFirstItem();
$shoppingRuleId = $shoppingRule->getRuleId();
$oCoupon->setData('rule_id',$shoppingRuleId);
$oCoupon->save(); 

-5

如果我对您的理解正确,则希望设置优惠券的有效期。

那么此功能应该已经在magento中可用。

检查此屏幕截图:

在此处输入图片说明

转到Promotions > Shopping cart price rule并选择所需的规则或创建新规则。

在“ 规则信息”部分的底部,您将看到此设置。只需为“截止日期”输入日期,它将在该日期到期。

希望这可以帮助。


1
我需要单独的优惠券,而不是所有优惠券都需要。根据规则,我会自动生成优惠券代码,每个优惠券代码应具有不同的“截止日期”。Magento提供的功能将为同一规则内的所有优惠券设置相同的“截止日期”。
JohnyFree

在这种情况下,您应该为具有差异到期日的同一项目创建差异赠券。
阿达什·哈特里

1
我需要所有优惠券代码都在同一价格规则内,但我不想有成千上万的价格规则。Magento不会为您提供每个优惠券的到期日期,而仅是按照价格规则创建。
JohnyFree
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.