首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在结帐/页面末尾添加自定义复选框

在结帐/页面末尾添加自定义复选框
EN

Stack Overflow用户
提问于 2013-02-20 18:36:47
回答 1查看 2.1K关注 0票数 2

在结帐/页面的末尾,我想在协议下面添加一个复选框。目前只有术语。

我喜欢添加一个可选的复选框,在那里用户可以注册时事通讯或检查产品应包装为目前。当然,这个领域应该显示在后端,让我可以看到,如果订单应该是礼物或如果用户想要的时事通讯。

谁能告诉我怎么做“礼物复选框”或时事通讯?

提前感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-02-20 22:46:34

我以前通过执行以下操作介绍了时事通讯选项:

添加字段

更新template checkout/onepage/agreements.phtml ements.phtml以包含新的复选框,

使用checkout_type_onepage_save_order_after的

要使用自定义模块,请使用以下内容

代码语言:javascript
运行
复制
<events>
    <checkout_type_onepage_save_order_after>
        <observers>
            <your_module>
                <class>your_module/observer</class>
                <method>saveOrderAfter</method>
            </your_module>    
        </observers>
    </checkout_type_onepage_save_order_after>
</events>

在观察者中获取客户信息

在你的观察者中,你可以通过

代码语言:javascript
运行
复制
Mage::app()->getRequest()->getParam('whatever_you_called_your_field', false);

然后,您可以获得订单的客户or或电子邮件

代码语言:javascript
运行
复制
$observer->getData('order')->getCustomerId();
$observer->getData('order')->getCustomerId();

此时,您可以加载时事通讯/订阅者模型并订阅电子邮件,或者将客户和setIsSubscribed加载为true。

这不会针对订单保存属性,但是如果您在安装脚本中创建了订单属性,那么您可以使用观察者来针对订单进行设置,尽管使用sales_order_save_before事件来针对订单设置属性可能更安全。

代码语言:javascript
运行
复制
$installer->addAttribute(
    'order',
    'your_attribute',
        array(
            'label' => 'Newsletter',
            'type'  => 'int'
        )
);
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14977738

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档