【问题标题】:Oxid eShop event handlersOxid eShop 事件处理程序
【发布时间】:2016-04-25 14:02:17
【问题描述】:

我正在尝试在自定义模块上的 OXID eShop 框架上创建一些跟踪事件,但我找不到任何事件处理程序或将代码放在某些自定义页面上的东西,而无需编辑核心文件。如果我在产品页面、类别页面、购物篮等上,我想要的是进行一些自定义 API 调用。 有什么办法可以在自定义模块中处理这个问题?

【问题讨论】:

  • 不确定您想要实现什么。如果您能提供您想要更改的类功能,那就太好了。有一个如何创建氧化模块的教程,也许对你有帮助:sitepoint.com/build-infinite-scroll-list-oxid-eshop-basics
  • Oxid 不提供任何可以挂起的事件(至少在版本 4.x.x 中)。但是,您可以通过编写自定义模块来扩展 Oxid 而无需更改其任何文件。您可能想在网络上查找一些教程以了解其工作原理。如果您在构建自己的模块时正在寻找示例和模式,我建议您查看 Oxid 或一些 these 模块附带的官方 PayPal 模块。还可以查看metadata file 了解实际可行的方法。

标签: events frameworks handler oxid


【解决方案1】:

OXID 没有您可能从 magento 或 shopware 中知道的此类事件或挂钩。你有两个选择:


1) 要运行服务器端 php 代码,您需要扩展 OXID 的功能,例如您要跟踪的页面的 render() 函数。 对于产品页面,它将是“详细信息”-> applications/controllers/details.php 分类页面是“alist.php”,购物篮是basket.php


2) 使用简单的 JS 进行客户端 api 调用。您可以将所有 js 代码附加到模板块(例如在页眉或页脚中)并为不同的控制器类创建一些 if-else 逻辑。 喜欢这里:https://github.com/OXID-eSales/oxideshop_ce/blob/b-5.3-ce/source/application/views/azure/tpl/layout/base.tpl#L32

您还可以查看任何用于谷歌分析或 piwik 的跟踪模块,它们与您想要做的非常相似。 如果你愿意,我可以给你更多的例子。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-25
    • 2013-12-24
    • 1970-01-01
    • 1970-01-01
    • 2011-03-22
    相关资源
    最近更新 更多