如何在magento中出售优惠券代码?

时间:2014-09-04 04:54:02

标签: magento

如何以magento销售优惠券代码。

可以赠送给朋友的优惠券代码,以便他可以购买带有该代码的产品?

2 个答案:

答案 0 :(得分:0)

登录Magento Admin。

  1. 点击促销 - >购物车价格规则。
  2. 在右侧单击“添加新规则”。
  3. 填写字段时,请务必为规则指定名称和说明,并决定是否选择所有客户组。
  4. 在优惠券菜单的“常规信息”页面中,选择特定优惠券选项。
  5. 在优惠券代码字段中输入代码(可以是字母或数字)。
  6. 在“使用优惠券”字段中,指定客户可以使用此优惠券代码的次数(如果您想提供限制)。如果没有,请留空。
  7. 在“按客户使用”字段中,如果要提供限制,请指定客户可以使用此促销的次数。如果没有,请留空。
  8. 如果您要提供优惠券,请在“从/到日期”菜单中选择优惠券的时间范围。如果没有,请留空。

答案 1 :(得分:0)

IDEA:

  • 使用自动生成的优惠券创建优惠券规则
  • 创建特定的控制器,该控制器将生成优惠券并将其显示给客户
  • 使用指向我们控制器的链接创建可下载产品

注意

这是我的第一个初步想法,我不确定它是否是正确的解决方案。 我之前从未处理过可下载的产品。

第一步创建优惠券

购物车价格规则添加新规则时,请填写所有必填字段,请记住选择适当的客户组(如果优惠券应该可供访客客户使用,则包括NOT LOGGED IN)。 然后,在优惠券中选择特定优惠券,然后在下面的复选框中选择使用自动生成。使用每张优惠券设置为1.如果您愿意,也可以设置时间限制。

然后保存。

保存后,新标签显示在左侧:管理优惠券代码

您可以通过设置数量(要生成的优惠券数量),代码长度,代码格式(字母和数字,字母,仅数字)来生成许多优惠券代码,代码前缀和/或后缀,以及是否包括破折号每x个字符。

记住代码长度仅适用于没有短划线,前缀或后缀的生成部分。

您还不需要生成任何内容,我只是解释了稍后我会参考的一些属性。

第二步准备模块

创建路径 app / code / local / Example / Coupon ,以及两个目录 etc controllers

在etc create config.xml

<?xml version="1.0"?>
<config>
    <modules>
        <Example_Coupon>
            <version>0.1</version>
        </Example_Coupon>
    </modules>
    <global>

    </global>
    <frontend>
        <routers>
            <example_coupon>
                <use>standard</use>
                <args>
                    <module>Example_Coupon</module>
                    <frontName>mycoupon</frontName>
                </args>
            </example_coupon>
        </routers>
    </frontend>
</config>

然后在控制器中使用IndexController.php:

<?php

class Example_Coupon_IndexController extends Mage_Core_Controller_Front_Action {

    const RULE_ID = 4;

    public function indexAction() {
        $rule = Mage::getModel('salesrule/rule')->load(self::RULE_ID);
        $generator = Mage::getModel('salesrule/coupon_massgenerator');

        $generator->setFormat(Mage_SalesRule_Helper_Coupon::COUPON_FORMAT_ALPHANUMERIC);
        $generator->setDash(false);
        $generator->setLength(6);
        $generator->setPrefix('EX');
        $rule->setCouponCodeGenerator($generator);
        $rule->setCouponType(Mage_SalesRule_Model_Rule::COUPON_TYPE_AUTO);
        $coupon = $rule->acquireCoupon();
        $code = $coupon->getCode();
        $coupon->setType(Mage_SalesRule_Helper_Coupon::COUPON_TYPE_SPECIFIC_AUTOGENERATED)->save();
        die($code);
    }

}

这里生成并保存了实际优惠券(在请求我们的自定义网址时)。注意,这里定义了代码的所有属性(如上所述)。您应该根据自己的需要进行编辑。

您可以访问http://www.yourstore.com/mycoupon/index

来访问此内容

最后,您需要在etc / app / modules中启用模块 创建Example_Coupon.xml

<?xml version="1.0"?>
<config>
    <modules>
        <Example_Coupon>
            <active>true</active>
            <codePool>local</codePool>
        </Example_Coupon>
    </modules>
</config>

第三步添加可下载产品

我不打算在此详细介绍所有细节,有一个很好的教程:https://www.hostknox.com/tutorials/magento/downloadable-products

您最后需要做的是提供以前生成的网址作为可下载链接:http://www.yourstore.com/mycoupon/index

问题

它有效,但是:

  • 如果客户有权下载此优惠券,则无法进行任何验证。我不确定,也许magento涵盖了这个或许没有。有一个禁用magento共享的选项,所以我希望magento能够隐藏客户的最终网址。

  • 您可能需要扩展我的示例模块,因为最后应该有可下载的文件 - 很可能是某种PDF。不仅仅是回应新生成的优惠券。

  • 此文件应存储在磁盘上的某个位置,并根据同一客户和相同订单的请求再次提供。