【问题标题】:Why Won't Fishpig Set the Magento Blog URL Correctly?为什么 Fishpig 不能正确设置 Magento 博客 URL?
【发布时间】:2013-02-23 17:24:11
【问题描述】:

所以,我的一个客户设置了这个 Magento 网站:

http://kharmakhare.com

实际上,我以前曾问过有关此网站的问题。这一次,他们希望在以下位置建立一个博客:

http://kharmakhare.com/blog

是的,已经有一个了。他们想用集成到 Magento 主题中的 Wordpress 博客替换 AW 博客。只有一个问题;我根本无法更改网址。

无论我做什么,博客总是出现在:

http://kharmakhare.com/wordpress

我尝试禁用 AW 博客并在以下位置测试新博客:

http://kharmakhare.com/blog

但是什么也没发生。上面的 url 只是重定向到主站点。

我所有的 Wordpress 集成设置都是绿色的(“改进你的博客”除外)。如果我在设置中禁用 Wordpress 集成,/wordpress 目录仍然会出现。

在 Wordpress 中,站点 url 设置为 /blog。 wordpress 网址是 /wp。每当我尝试更改永久链接设置时,Wordpress 都无法创建 .htaccess 文件,所以我手动进行了...但它总是在设置中使用 /blog:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /blog/index.php [L]
</IfModule>

这并不重要。即使它设置为:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wp/index.php [L]
</IfModule>

还是不行。

设置起来确实很痛苦。文档说它很容易,我读过的所有内容都说它很容易。这对我来说根本行不通。我什至尝试重新安装插件。然后我尝试卸载并重新安装插件。我还尝试过(在此之前)卸载并重新安装 wordpress。没有任何效果。

如果没有新博客来替换它,我无法删除 AW 博客。我可以暂时禁用 AW 博客,但不能删除它。有什么我遗漏的吗?

任何帮助将不胜感激。

【问题讨论】:

    标签: wordpress magento fishpig


    【解决方案1】:

    首先,将 WordPress 集成升级到最新版本并卸载 AheadWorks 博客扩展。

    其次,我假设您已将 WordPress 安装在“博客”以外的子目录中。对于这个例子,我假设你已经将它安装在 'wp' 中。

    要使您的博客在 /blog 上可见,请将您的博客路由设置为“博客”,并将您的 WordPress 路径设置为“wp”。接下来,登录 WordPress 并选择 Settings > General 并将第二个 URL 选项(标记为站点地址 (URL))更改为 http://www.yourmagentourl.com/blog

    您现在应该可以在 /blog URL 上查看您的博客了。

    最后,如果 WordPress 安装在 /wp 并且在 /blog 中可见,您的 .htaccess 文件应该引用 /wp/ 而不是 /blog

    【讨论】:

      【解决方案2】:

      解决方法很简单。首先完全禁用 AW_Blog。不要只是通过配置或通过 System > Advanced 禁用它。要么完全卸载它,要么删除 app/etc/modules/AW_Blog.xml 文件,然后刷新缓存。

      AW_Blog 模块使用 - 相当自私 - 'blog' 作为它的frontName。 frontName 优先于 Magento WordPress 集成中使用的动态路由系统,因此在安装 AW_Blog 时,您不能使用“博客”作为 WordPress URL。

      完全卸载 AW_Blog 后,在扩展配置中输入“blog”作为博客路由。最后,登录 WordPress 管理员并选择设置 > 常规。在这里,您将看到 2 个 URL。第一个 URL 应该是真正的 WordPress URL(如果 WordPress 安装在 /wp 那么这应该是 /wp URL)。第二个 URL 应该是集成的 Magento URL(例如 /blog URL)

      WordPress .htaccess 文件无效,因为它仅在实际访问 WordPress 时运行,而在访问 Magento 时不运行。

      【讨论】:

        【解决方案3】:

        您好,这更像是一个问题澄清 (disclaimer),因为我遇到了可能相关的问题。

        当您访问http://WWW.kharmakhare.com/blog 而不是较短的网址时会发生什么?目前对我来说 - www.magento.com/blog 正确解析,而 magento.com/blog 将我发送到主页。

        另外,您是否尝试过在 wordpress 设置中设置完整路径?您的问题表明您已将其设置为 /blog 而不是完整的 http://kharmakhare.com/blog ?我相信它应该包含完整的文件路径。

        【讨论】:

        • 当我说 wordpress 中的设置设置为 /blog 时,我的意思是 kharmakhare.com/blog。事实上,我只是检查一下是否可能错误地添加了“www”。进入网址。不是。但是,就您而言,您只能拥有 www.magento.com 或 magento.com。 Wordpress 做同样的事情,选择一个并留在那里对您有利。将您的网站放在多个永久位置会损害您的 SEO 排名。
        • 创建一个新问题,我会给你一个正确的答案,好吗?我本来打算对您投反对票,因为您发布答案而不是评论,但后来我阅读了您发布的文章并意识到您无法发布 cmets。 :P
        • @jrConway 感谢您的意见。我知道我应该选择另一个作为永久位置,但是如果其中一个不起作用,那么当我在浏览器中输入 stackover.com/question 时,我不在乎我是否最终会在www.stackoverflow.com/question,但是如果你找到我,最终访问 www.stackoverflow.com 是个问题?无论如何已经打开了一个问题:)stackoverflow.com/questions/15402449/…
        【解决方案4】:

        好的,我认为这一定是插件中的错误。我可以让它工作的唯一方法是编辑 Fishpig 插件的核心,以便默认路由是“博客”。

        不是一个理想的解决方案,但至少它有效。不过,这不应该是一个问题,插件应该可以按预期工作而无需修改核心文件。

        【讨论】:

        • 你是怎么做到的?你编辑了什么文件?我实际上正在寻找在这一点上做同样的事情。似乎没有什么对我有用。
        【解决方案5】:

        在处理 Wordpress 插件时,请务必清理 magento 缓存(最好在编辑期间禁用它)并清除浏览器缓存。

        在 magento 和 Wordpress 插件之间更改路由,在处理无效缓存时很快就会变成一场噩梦。

        还要检查您的 URL 重写,因为有时作为最后的手段,网店所有者会使用它来使事情正常进行。

        【讨论】:

          猜你喜欢
          • 2010-11-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-03-20
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多