2011-05-16 94 views
1

我是Magento的新手, 目前我正在研究项目的可行性。我想要做的是使用外部CMS来管理magento中的布局,块和菜单。以drupal为例。magento:使用magento渲染引擎渲染外部html

我看过一个模块,它完成了集成了drupal和magento的所谓的drupento。不幸的是,我没有成功地使它工作。该模块将html片段存储在文件系统中,magento呈现这些块。 所以我想知道:

  • 如何使用Magento的使用API​​的这些功能?

  • 有什么限制,我们能做什么,不能做什么?

对此有何想法?

问候

回答

1

我不能Drupal的具体讲,但既然你问一般约另一个CMS,我会回答这一点。由于Magento页面是以模块化方式构建的,因此您可以绝对将页面的块替换为其他地方生成的页面。一般的做法是这样的:

  1. 标识要在其他CMS生成
  2. 使用Magento的布局文件删除旧的街区,使您指定
  3. 一个新块的块创建块,并传递任何必要的参数,把它
  4. 让你的块的_toHtml方法使其他CMS呼吁内容

您是否希望这是给你的Magento或其他CMS缓存块内容,但您应该只允许其中一个或另一个这样做。

由于你的块可以调用任意PHP,所以你不应该在Magento方面有很多限制。您可能需要确保您使用的任何CMS可以呈现单个内容块,而不仅仅是整个页面。请记住,您可能无法从Magento内部的其他CMS调用本机功能(尝试使用Wordpress中的Magento的theLoop,哈!),而是Magento会消耗其他内容块CMS就像是一项服务一样。这是因为每个系统使用的通常是互斥的框架。

希望澄清事情有点!

谢谢, 乔

+0

感谢你,这正是我想要知道的。但是有一点问题:与第三方CMS进行这种整合有多复杂? – 2011-05-16 13:03:34

+0

这取决于您可以轻松地从第三方CMS获取内容。最好的情况是能够使用file_get_contents将内容作为外部URL包含在内。最糟糕的情况是需要将第三方CMS输出为其他文件格式,并破解Magento和该CMS。难度也可能取决于您需要在两者之间整合多少数据。你需要某种菜单或页面的用户ACL吗?像这样的东西将不仅仅是一点点痛苦。 – 2011-05-16 15:31:50

+0

在drupal中访问区块非常容易,所以我想我会将每个产品属性写入临时文件并使magento读取它。猜猜这对性能会更好。任何方式感谢您的帮助。我正在准备使用drupal和magento的POC。 – 2011-05-16 16:24:24