首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Magento newsletter_subscriber change_status_at

Magento newsletter_subscriber change_status_at
EN

Stack Overflow用户
提问于 2013-01-28 04:33:31
回答 1查看 775关注 0票数 1

我已经寻找了一段时间在其他线程,有几个已经接近我需要的,但不完全。

当客人或客户注册我们的时事通讯时,字段change_status_at将填充时间戳。

但是,如果来宾或客户取消订阅,我们希望change_status_at字段获取当前时间戳。

这一点很重要,因为我们没有使用Magento 1.7.0.2 CE的时事通讯“特性”。相反,我们将newletter_subscriber列表导出到公司以发送电子邮件。

谢谢,

EN

回答 1

Stack Overflow用户

发布于 2013-08-23 05:41:00

我也遇到了这样的情况。客户想知道订阅/取消订阅操作发生的日期。环顾互联网,我发现其他一些人也遇到了这种情况,一些人声称它曾经在非常旧的Magento版本中工作。

我认为发生的情况是,change_status_at的字段定义过去被设置为自动更新为默认时间戳(例如,在更新CURRENT_TIMESTAMP时),但在某些更新中丢失了。所以没有Magento代码来写入字段,因为MySql应该神奇地维护它。

您可以尝试更新表定义以重新添加ON UPDATE CURRENT_TIMESTAMP (但我不赞成更改默认模型表),或者添加另一个字段作为默认时间戳字段。

或者,更好的解决方案是创建一个带有观察者的模块,以便在订阅更改时添加日期。这可能看起来像(警告-这段代码只是一个例子,可能有一些语法错误,因为删除了我的模块的信息)-

app/code/local/Myco/MyMod/etc/config.xml

代码语言:javascript
复制
<?xml version="1.0"?>

<config>

    <modules>
        <Myco_MyMod>
            <version>1.0.0</version>
        </Myco_MyMod>>
    </modules>

    <global>
        <models>
            <myco>
                <class>Myco_MyMod_Model</class>
            </myco>
        </models>

       <events>
            <newsletter_subscriber_save_before>
                <observers>
                    <mycomymod_observer_subscriber>
                        <type>singleton</type>
                        <class>Myco_MyMod_Model_Observer</class>
                        <method>setUpdateDate</method>
                     </mycomymod_observer_subscriber>
                </observers>
            </newsletter_subscriber_save_before>
        </events>
    </global>
</config>

===========

在app/code/local/Myco/MyMod/Modules/Observer.php中

代码语言:javascript
复制
<?php

class Myco_MyMod_Model_Observer
{

    public function setUpdateDate(Varien_Event_Observer $observer) {
        $subscriber = $observer->getSubscriber();
        $subscriber['change_status_at'] = (date("Y-m-d H:i:s", time()));
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14551928

复制
相关文章

相似问题

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