2

如果 Joomla 2.5 中没有菜单项关联,我正在尝试强制语言切换模块不重定向到主页。我只想更改当前 URL 中的国家代码。

这样 'my-domain.com/ en /menu?view=cat&id=1' 转换为: 'my-domain.com/ de /menu?view=cat&id=1' 等等......

我想我应该修改 modLanguagesHelper 类,但不知道如何创建所需的 $language->link 以通过 JRoute 正常工作。

任何帮助表示赞赏!

4

1 回答 1

1

Joomla 通常默认这样做。似乎很奇怪,它与您所遵循的方法无关。

虽然,阅读你留下的评论,我知道这不是一件容易的事,而且你已经建立了网站的很大一部分,回到结构上。

如果我是你,我会编写一个小的自定义模块来更改 URL 中的 lang=xx 或 /xx/,并将用户重定向到他们想要的语言。如果您需要这方面的帮助,请随时在下面发表评论。

根据您的问题,我个人会使用简单的字符串操作。由于您非常熟悉 PHP(考虑到您已经编写了自己的自定义组件),因此对您来说应该是小菜一碟:

  • 获取当前网址
  • 获取当前语言标签
  • 用 lang=de 替换 lang=en 的实例(示例语言,你明白了)
  • 将 yoursite.com/en/ 的实例替换为 yoursite.com/de/
  • 打印自定义链接、标志或您将要使用的任何内容。

这不是建议的场景,但如果您还添加以下内容,您真的可以制作一个可用的模块:

  • 管理员编写要使用的语言代码的选项(以允许以后添加)

并确保您动态获取站点名称,然后您可能还有一个可以在 JED 中发布的模块,以帮助其他与您一样情况的人!

于 2013-09-24T19:33:20.307 回答