我有一个magento安装问题。我使用Magento版本。 1.5.0.1社区版开发本网站http://cissmarket.com/。Magento多语言 - 在语言中的双重变化结果在404(或如何更改商店内的语言而不是视图)
将语言从EU版本更改为法语,然后再更改为德语时出现问题。法国的变化是好的,但是当我在同一页面更改为德语时,我收到了404错误。此外,这是谷歌网站管理员工具中的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但它与我的问题没有关系。
关于设置:
- 我使用缓存服务,也可以我做了索引的所有内容。
- 我试图访问的产品或类别可用,并且对所有语言都处于活动状态。
- 系统>常规>网址>网址选项>将商店代码添加到网址设置为 为yes。
- 系统>常规> Web>搜索引擎优化>使用Web服务器 重写设置为yes。
- 除了系统自己制作的 之外,没有对.htaccess文件进行其他更改。
所以得出结论:问题在于,当我从一个页面切换到另一个页面时,语言和URL地址的2次连续变化给出了404。
任何建议,将不胜感激。
更新:试过这种http://www.activo.com/how-to-avoid-the-___from_store-query-parameter-when-switching-store-views-in-magento但在第一语言变化
编辑#1的结果在404:
发现了问题:文件languages.phtml包含这些代码<?php echo str_replace ("/fr/","/de/",$_lang->getCurrentUrl()); ?>
和实际上并更换只根据相应的翻译语言代码而不是整个网址。
因此适用于本
它将返回
因此,没有人知道如何获得当前的相应网址商店中可用其他语言的页面?
编辑#2(使用@Vinai溶液):
它的工作原理上的产品网页,但没有对类。
我会检查一下,然后回来一个答案!谢谢! – Mike 2012-02-08 10:54:28
非常感谢您的回答。它工作正常,但不在类别页面上,但仅在产品页面上。我使用'print_r($ storeUrls);'在类别页面上尝试了简单版本的输出,而在数组页面上,数组是空的,但是在产品页面上,它会返回正确的数组元素,如上所述。 – Mike 2012-02-10 12:11:22