Magento - 没有新闻通讯订阅和取消订阅事件

2024-04-11

为什么在客户或新闻通讯模块中的新闻通讯订阅/取消订阅过程中或周围没有调度任何事件。

我目前面临的唯一选择是使用订阅者模型的重写来适应这里的一些代码。

有没有其他人有一个好的替代方案 - 或者我错过了什么


我遇到了需要监听订阅/取消订阅事件的情况。我遇到了这个问题,并认为我会将这个解决方案留在这里供任何可能需要它的人使用:

通过向事件添加观察者newsletter_subscriber_save_before在你的 config.xml 中:

<global>
    ....
    <events>
        ....
        <newsletter_subscriber_save_before>
            <observers>
                <your_unique_event_name>
                    <class>yourgroupname/observer</class>
                    <method>newsletterSubscriberChange</method>
                </your_unique_event_name>
            </observers>
        </newsletter_subscriber_save_before>
    </events>
</global>

然后你可以打电话getSubscriber()(在上下文中$observer->getEvent(),请参阅下一个代码块)在观察者中获取Mage_Newsletter_Model_Subscriber允许您获取有关订阅者的数据的模型。这适用于订阅和取消订阅的情况。

public function newsletterSubscriberChange(Varien_Event_Observer $observer) {
    $subscriber = $observer->getEvent()->getSubscriber();
    //now do whatever you want to do with the $subscriber

    //for example
    if($subscriber->isSubscribed()) {
        //...
    }

    //or
    if($subscriber->getStatus() == Mage_Newsletter_Model_Subscriber::STATUS_SUBSCRIBED) {
        //...
    } elseif($subscriber->getStatus() == Mage_Newsletter_Model_Subscriber::STATUS_UNSUBSCRIBED) {
        //..
    }

}

事实证明这真的很容易。这些模型事件非常强大,让您可以非常轻松地完成这样的事情。无法拒绝免费功能!

为了快速参考,这里是什么数据Mage_Newsletter_Model_Subscriber模型提供 http://php.r3dcode.com/files/Magento/1.7/0.2/app/code/core/Mage/Newsletter/Model/Subscriber.php#n28 (1.7)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Magento - 没有新闻通讯订阅和取消订阅事件 的相关文章

  • Magento:监控所有 cron 作业的执行时间?

    我继承了一个基于 Magento Enterprise 1 9 的网站 该网站定期运行大量 cron 作业 这些 cron 作业由第三方模块配置 不是 Magento 核心的一部分 一组作业负责将数据文件从 Magento 导出和导入到仓库
  • Magento - 如何创建“十进制”属性类型

    我在网上做了一些搜索 但还没有找到这个问题的任何答案 我遇到的情况是 我需要一个十进制值的产品属性 它必须支持负数和正数 并且还必须可排序 由于某种原因 Magento 没有 十进制 属性类型 唯一使用小数值的类型是 Price 但不支持负
  • 如何在magento中添加自定义模块

    您好 我想为页脚创建一个自定义模块 用于显示新闻标题 还没有使用自定义模块 我该怎么做 谁能告诉我创建自定义模块的简单步骤 Thanks 您会发现的最佳资源是 模块创建器扩展 http www magentocommerce com ext
  • 如何从 Magento 的报价中删除项目?

    在结账过程中 我有时想以编程方式从会话的报价中删除项目 所以我尝试了这段代码 quote Mage getSingleton checkout session gt getQuote all quote items quote gt get
  • 无法登录 Magento 管理员

    我在登录我们的一个临时站点上的 Magento 管理面板时遇到问题 它在我们的 webdev 服务器上 100 工作 不久前在临时服务器上也工作得很好 我做了一些研究 大多数人认为这与在本地主机上运行 Magento 以及浏览器不为域名中没
  • 马根托。将块插入另一个块而不更改模板代码

    我尝试寻找解决方案但没有结果 我的任务是编写模块 它应该将一些 html 插入现有块中 我注意到 当我使用布局 xml 文件时 我可以将我的块插入到一些参考中 例如
  • Magento - 检查管理员和客户是否登录

    我有一个安装了 Magento 1 4 0 1 的 Web 服务器 我有另一个与之共享凭据的网站 我已经设法检查客户是否登录 在更改 Magento 中的 cookie 位置之后 但是当我还尝试确定管理员是否登录时 事情变得复杂 我只能得到
  • magento从产品sku获取产品类型

    我如何使用产品 sku 或 id 获取产品类型 简单 可配置 分组 我已加载产品集合并从中尝试通过 product gt getTypeId 但它不打印产品类型 请帮我 Thanks I think product gt getTypeId
  • 如何在注册和结账过程中更改magento中的“送货信息”标签

    我想将 帐单信息 标签文本更改为 运输和帐单信息 我尝试使用 Mage Checkout csv 但这没有帮助 请提出解决方案 谢谢你 Use the 翻译文件translate csv在你的主题中 出于演示目的 我将使用默认包 app d
  • 在 Magento 中添加自定义折扣订单总计不会更改销售税

    我创建了一个自定义订单总额 在某些情况下会提供折扣 总计总是正确的 但是销售税计算在计算时没有考虑我的折扣 因此 如果我提供 10 美元的折扣 则销售税金额是根据折扣前的全部金额计算的 以下面为例 Subtotal 856 49 Multi
  • Magento 以编程方式删除产品图像

    这肯定是一个非常简单的编程任务 我绝对无法在网上找到任何有关它的信息 基本上 我正在尝试删除产品图像 我想删除产品媒体库中的所有图像 我可以在不为如此简单的任务编写一百万行代码的情况下完成此操作吗 请注意 我已经尝试过 attributes
  • Magento Rest API - oAuth 错误

    我是第一次使用 Magento Rest API 我浏览了 Rest API 的教程http www magentocommerce com api rest并尝试了一个通过 API 获取产品的示例 callbackUrl http loc
  • IE 抛出 JavaScript TypeError 但在 chrome 上不抛出

    描述在我们的 Magento 购物车上 当用户单击添加到购物篮在任何 Internet Explorer 浏览器的 产品详细信息 页面上单击按钮 浏览器中都会弹出一个包含以下错误消息的窗口 异常 类型错误 无法获取未定义或空引用的属性 ta
  • Magento 2 REST API 客户自定义属性

    Magento 2 REST API 文档解释了在更新或创建客户时设置custom attributes 的方法 http devdocs magento com swagger index 20 html http devdocs mag
  • Magento:我可以在哪个文件夹中看到我安装的扩展?

    我在 magento 1 5 中安装了一个扩展 只是想知道它在我的服务器上的位置 因为我想向它写入一个包含文件 谢谢 通常在 MagentoFolder app code community SomeCompanyName SomePack
  • Magento 一页结帐 - 出现 TypeError: checkout undefined (在 opcheckout.js 中)

    大约一周前 一页结帐工作正常 但现在不行了 毫无疑问我有错 因为我仍然遇到与管理后端相关的问题 并且我可能在处理该问题的过程中以某种方式搞砸了 无论如何 当 登录 注册 用户单击一页结账的帐单信息步骤中的 继续 按钮时 会发生什么情况 就好
  • Magento:设置刚刚创建的网站的配置值?

    我正在以编程方式创建网站 用户等 问题是 创建网站时 我无法立即设置配置值 Code
  • Magento 中的子域 htaccess 问题

    public html www domain com public html subdomain subdomain domain com public html htaccess public html subdomain htacces
  • Magento补丁安装失败

    从以下位置下载并运行 Magento PHP 5 4 支持补丁 Magento CE v1 7 0 0 1 7 0 2 时http www magentocommerce com download http www magentocomme
  • 如何从 Magento One Page Checkout 获取发布数据?

    为了在 Magento Checkout 中添加客户评论字段 我在相应的模板文件中添加了一个文本字段 并使用如下观察器将评论添加到订单中 comment strip tags Mage app gt getRequest gt getPar

随机推荐

  • 如何在 Play Framework 关闭期间等待 Actor 停止?

    下面的代码抛出一个java lang IllegalMonitorStateException当我关闭播放服务器时出现异常 它是由a 等待 1000 调用onStop方法 谁能告诉我为什么会出现这种情况以及如何优雅地等待 Actor 在 P
  • 如何读取文件中的数据,并将其传递给结构〜> C

    好的 我的主目录中有一个名为 Graduates txt 的文件 我有一个便携式程序来查找主目录 然后我打开该文件进行读取 文件中的数据看起来像这样 year firstName lastName 我需要从该文件中获取这些数据 并将其分离到
  • 了解 Elm 中的通用联合类型

    我无法理解到底是什么Html msg类型是什么 或者它如何使用 我在 VirtualDom elm 中找到了这行代码 其中Html msg似乎是以下别名 type Node msg Node 这看起来像一个带有一个类型参数的通用联合类型 m
  • spring-form:带有枚举的选项标签

    我在显示具有正确值的下拉列表时遇到问题 我正在使用
  • 正则表达式解析类似 Javascript 函数调用的语法

    我有以下数据可能性 fnname fnname value fnname value valueN 我需要一种方法用 javascript 正则表达式解析它以获得数组 fnname fnname value fnname value val
  • C#/.Net 中的缓存

    我想问你在 C 中实现缓存的最佳方法是什么 是否有可能使用给定的 NET 类或类似的东西 也许像字典这样的东西会删除一些条目 如果它变得太大 但是哪些条目不会被垃圾收集器删除呢 如果您使用 NET 4 或更高版本 则可以使用内存缓存 htt
  • 使用不同的应用程序对 git 中的 diff 输出进行着色

    我想用cdiff https pypi python org pypi cdiff使用 git 时对差异输出进行着色 我可以通过 cdiff 传递 git 命令的输出 但我想知道是否可以不必这样做 具体来说 当我使用git log p 当我
  • 在具有整数和字符变量的数据框上按行应用 FUN

    一个完全基本的问题 如果重复 请原谅我 set seed 1 df lt data frame id c a a b b a a sample 1 10 size 5 replace T b sample 1 10 size 5 repla
  • 在已安装应用程序的情况下运行 inno setup 时卸载

    我刚刚开始使用 inno setup 看起来效果很好 但是 当我运行已安装的应用程序的安装程序时 它会重新安装 我想给用户卸载 这可能吗 如果可以 该怎么做 具体来说 我为家庭作业编写了一个游戏 我使用 inno setup 制作了一个安装
  • 为什么 getCompatedStyle 不为父元素隐藏的元素返回 display:none ?

    根据这个问题 https stackoverflow com q 1169967 798371页面和接受的答案here https stackoverflow com q 4866229 798371 通过Javascript获取继承的CS
  • 更改货币符号或将其在 inputmask 货币中删除

    我在用着Robin Herbot 的 inputmask jquery 插件 https github com RobinHerbots jquery inputmask我想将默认货币符号 默认情况下为美元货币符号 更改为 PESO 货币符
  • 如何使用 PHP 下载 HTML?

    如何从 PHP 中的 URL 下载 HTML 文件 并下载所有依赖项 例如 CSS 和图像 并将它们作为文件存储到我的服务器 我的要求是不是太多了 最简单的方法是使用wget http en wikipedia org wiki Wget
  • 如何从 PHP 数组为下拉选择字段创建嵌套列表?

    我的问题与本主题中描述的问题非常相似从 PHP 数组创建下拉选择字段的嵌套列表 https stackoverflow com questions 14613546 create nested list from php array for
  • 如何使用 Android Studio Arctic Fox 将 Android 库 aar 作为模块导入?

    我曾经能够将库 aar 文件导入为模块 https stackoverflow com a 34919810 355456他们一直工作得很好 我不知道如何使用最新版本的 Android Studio Arctic Fox 来做到这一点 有人
  • 从数据框中删除所有值为 NA、NULL 或空的列[重复]

    这个问题在这里已经有答案了 我有一个数据框 其中一些值为 NULL 或空 我想remove these columns其中所有值 are NULL or empty 应从数据框中删除列 而不仅仅是隐藏列 我的头 df 看起来像 data V
  • nginx + python + websocket

    我如何配置nginx 最新版本 他们说它支持websockets 来支持WebSockets 我如何使用 python 来运行 websockets 连接 这就是我想要的 客户端使用 JavaScript 创建 WebSocket webs
  • 自动调整 NumPy 重新数组的大小

    我想创建 numpy recarray 的子类 当数据添加到当前长度之外的行时 它会自动调整大小 下面的代码完成了我想要的大部分功能 class autorecarray numpy recarray def init self args
  • p:对话框在验证失败时不隐藏

    我遇到无法关闭 PrimeFaces 对话框的问题 输入字段 用户名 是必需的
  • 单个 Django 模型,多个表?

    我在 MySQL 数据库中有几个临时表 它们共享相同的架构并具有动态名称 我将如何使用 Django 与这些表交互 单个模型可以从多个表中提取数据吗 我相信 您可以创建一个工厂函数 该函数会以动态方式返回您的模型db table http
  • Magento - 没有新闻通讯订阅和取消订阅事件

    为什么在客户或新闻通讯模块中的新闻通讯订阅 取消订阅过程中或周围没有调度任何事件 我目前面临的唯一选择是使用订阅者模型的重写来适应这里的一些代码 有没有其他人有一个好的替代方案 或者我错过了什么 我遇到了需要监听订阅 取消订阅事件的情况 我