【问题标题】:Joomla 2.5 call component from url on a multilingual systemJoomla 2.5 从多语言系统上的 url 调用组件
【发布时间】:2014-02-08 22:31:44
【问题描述】:

我在本地安装的单语言 joomla 上开发了一个组件。我现在正在尝试将它安装在多语言系统上,并且在该系统上我无法从 url 调用我的模块。

标准网址:index.php?task=Weight_and_Balance&plane=DR400

正在自动翻译为:index.php?task=Weight_and_Balance&plane=DR400&Itemid=600&lang=en

并且此 URL 会导致错误 404。

我该如何解决这个问题?

【问题讨论】:

  • 您的网址中需要一个 option=com_something。

标签: joomla components multilingual


【解决方案1】:

@Elin 是正确的,您缺少组件。

这意味着正确的组件是您的开发站点上的主页(因此它是由 SEF 从 URL 收集的 - 或缺少它,因为它是根),而不是在您的多语言站点上。只需添加&option=com_yourcomponentname,使用您的开发站点默认页面的组件名称。

这似乎与多语言功能无关。

【讨论】:

  • 我尝试了“index.php?option=com_wandB&view=default&task=Weight_and_Balance&plane=DR400”,但 Joomla 将其替换为“index.php/en/?option=com_wandB&view=default&task=Weight_and_Balance&plane=DR400”。 (它在 /en/ 之间填充)。在本地服务器上,这个“index.php?option=com_wandB&view=default&task=Weight_and_Balance&plane=DR400”效果很好。有什么意见吗?
  • 我禁用了 SEF 并再次尝试。 index.php?option=com_wandB&view=default&task=Weight_and_Balance&plane=DR400。 Joomla 将 url 更改为 index.php?option=com_wandB&view=default&task=Weight_and_Balance&plane=DR400&lang=en(在末尾添加 &lang=en)并给出错误 405。
  • 为了摆脱默认前缀,您需要启用系统 - 语言过滤器插件并将其设置为删除 URL 语言代码(仅适用于默认语言)。再次阅读原始代码,Itemid 600 是否适合您的菜单项?关闭 SEF 后它还会出现吗?
  • 有效。另一个系统是区分大小写的。这就是为什么您的解决方案似乎不起作用的原因。谢谢!
猜你喜欢
  • 2013-02-25
  • 2012-12-20
  • 1970-01-01
  • 2012-10-09
  • 1970-01-01
  • 2014-10-27
  • 1970-01-01
  • 1970-01-01
  • 2013-05-01
相关资源
最近更新 更多