将Wordpress集成到Magento:问题包括blog-header

时间:2011-07-13 08:22:06

标签: wordpress magento integration

我需要将我的Magento网站与几个Wordpress资源集成 由于它们不仅仅是博客供稿,我无法使用模块或rss块 我发现最好的解决方案是将Wordpress标题包含在Magento中,而不是在我的块中直接调用WP函数 这是放在Mage.php顶部的神奇线条

require_once($_SERVER['DOCUMENT_ROOT'].'/wordpress/wp-blog-header.php');

一切正常,但我现在对AJAX有很多问题 一些例子:

  1. 修改属性集会引发JSON解码错误;
  2. 编辑布局更新会导致验证错误;
  3. 连接到Magento Connect,导致该网站查找wp-install.php。
  4. 如果我注释掉require_once行,所有这些错误都会消失 有没有人面临同样的问题? 关于如何在主页上加入专线的任何建议?
    我试图将线移到另一个位置,但它引发了冲突,所以我必须把它放在文件的顶部。

    更新
    我试图将该行放在其他地方(index.php或模板文件),但我得到两个错误:

    1. 与__()函数冲突(我通过黑客攻击Magento的功能阻止了它,但移动线,我也需要修改wp-l10n.php);
    2. 每当我尝试访问某个页面时,该网站都会将我重定向到wp-install。

2 个答案:

答案 0 :(得分:1)

你不应该为前端和后端都这样做。考虑将include包含在主题header.phtml文件中。

如果您只想在主页上使用它,请将另一个主题添加到Magento并设置主页的CMS以使用它。主题只能包含header.phtml文件,它将恢复为其他所有内容的网站主题默认值。

答案 1 :(得分:0)

在单独的网址上提供wordpress内容,然后从您的块中进行子请求。

readfile($_SERVER['HTTP_HOST'].'/wordpress/wp-blog-header.php');
// ...or whatever the URL is

也许您可以使用子请求将Wordpress数据作为JSON或XML进行访问,然后在您的块中对其进行格式化。

关键是wordpress和magento请求是单独的进程,因此不要相互冲突。