Magento - 显示客户控制面板的其他信息

时间:2012-07-09 10:01:43

标签: magento module

客户要求我将Magento的客户控制面板与一些其他信息集成,以便从外部Web服务中检索。目前,我有一些小的独立代码,可以查询此类Web服务并检索必要的数据。我需要做的是在Magento中集成这些代码并在控制面板上显示数据。

从我所见过的最快(最脏)的方式是“粗暴地”将调用硬编码到dashboard.phtml文件中。数据并不太复杂,因此这可以成为快速运行概念证明的一种选择。

但是,我想在多个网站上重复使用此功能,并且还需要一些配置,这些配置对于作为硬编码变量进行维护是很痛苦的。此外,以上是一个黑客,而不仅仅是一个解决方案。

很明显,我需要开发一个合适的模块。

问题
我知道如何创建一个基本模块,其配置页面和一个简单的控制器。我想要了解的是,一旦我实现了一个获取外部数据的方法,就是以下内容:

  • 我应该把这个方法放在哪里,我应该怎么称呼它?
  • 我应该如何将数据传递到dashboard.phtml进行渲染?

我可能会找到“一种方法”来完成上述工作,但我确信我最终会得到一个黑客而不是解决方案,因此欢迎学习Magento方式的任何帮助。感谢。

1 个答案:

答案 0 :(得分:1)

你可以:

  • 创建新模块
  • 为您的仪表板添加一个观察者before_html或after_html事件(一个在渲染模板之前调用,另一个在模板已经渲染时调用)
  • 将您的方法添加到您的观察者,该观察者将您从webservice收到的内容自动输出到块输出(内容之前或之后)
你可以:

  • 创建新模块
  • 创建一个包含webservice方法的块
  • 使用块引用
  • 向布局文件添加布局处理程序
  • 编辑模板并从那里调用您的块并获取此
  • 的数据
  • 您也可以选择创建自己的模板并在模板中调用块输出
你可以:

  • 创建新模块
  • 添加模板并在模板中实现所有内容
  • 使用布局文件替换最初使用的模板