【发布时间】:2012-02-24 04:19:40
【问题描述】:
我在安装 magento 时遇到问题。我用的是 Magento 版本。 1.5.0.1,社区版开发本站http://cissmarket.com/。
当我将语言从欧盟版本更改为法语然后再更改为德语时出现问题。改成法语没问题,但是当我在同一页面中改成德语时,我收到 404 错误。这也是 Google 网站管理员工具中的第 404 代错误,当我尝试获取此链接并将其粘贴到浏览器中时,它也会给我一个 404 错误。我在 Google 网站管理员工具中有大约 50 种产品和约 550 404 个错误。我知道问题出在我的描述中。
此外,我有一个搜索引擎优化问题,因为我有这个法语页面:
http://cissmarket.com/de/cartouches-refilables.html
当我切换到网站的德语版本时,它会将我带到此链接
http://cissmarket.com/de/cartouches-refilables.html?___from_store=fr(如果我现在尝试切换到英国,我会得到上面提到的 404)
而不是去这个:
http://cissmarket.com/de/nachfullpatronen.html
已经检查过这个404 error when switching between stores when in a category on magento,但它与我的问题无关。
关于设置:
- 我使用缓存服务,还索引了所有内容。
- 我尝试访问的产品或类别可用并针对所有语言设置为活动状态。
- 系统 > 常规 > Web > URL 选项 > 将商店代码添加到 URL 已设置 是的。
- 系统 > 常规 > Web > 搜索引擎优化 > 使用 Web 服务器 重写设置为是。
- .htaccess 文件除了 系统自己制作的。
所以总结一下:问题是我从一个页面切换到另一个页面时,两次连续更改语言和错误的 url 地址给出的 404。
任何建议将不胜感激。
更新:尝试了这个http://www.activo.com/how-to-avoid-the-___from_store-query-parameter-when-switching-store-views-in-magento,但它在第一次语言更改时导致 404
编辑#1:
发现问题:文件languages.phtml包含此代码<?php echo str_replace ("/fr/","/de/",$_lang->getCurrentUrl()); ?>,实际上根据相应的翻译只替换了语言代码而不是整个url。
所以应用到这个
它会返回
那么有谁知道如何获取商店中其他可用语言的当前页面的相应 URL 吗?
编辑#2(使用@Vinai 解决方案):
它适用于产品页面,但不适用于类别。
【问题讨论】:
标签: url magento seo http-status-code-404 multilingual