【问题标题】:Updating joomla admin component from 2.5 to 3.x将 joomla 管理组件从 2.5 更新到 3.x
【发布时间】:2013-03-12 14:36:59
【问题描述】:

我正在尝试更新我们的模板和当前模块以及后端管理组件以使用 Joomla 3。

我已经更新了组件文件以在需要的地方使用JControllerLegacy 等,我可以在我的后端看到它——基本上。它是一个字段,您可以在其中放入一串信息,然后将其保存到数据库中,然后在其他模块中重新使用。

我可以在文本字段中输入内容,但如果我点击保存、保存并关闭或取消,则完全没有任何反应。

我没有遗漏任何文件,因为这是从 2.5.x 上的工作版本直接导入的,当我运行 Web 控制台时它告诉我:

TypeError: b is null @ /media/system/js/core.js:4

Empty string passed to getElementById(). @ /media/jui/js/jquery.min.js:2

我认为它试图告诉我文本字段为空。但是,无论里面有什么,它仍然没有做任何事情,我会认为取消是否无关紧要盒子里是否有任何东西。

任何指针都会很棒。

【问题讨论】:

  • “joomla 3 不应该用于公众”的态度是什么?稳定,官方推荐启动新项目,过几天3.1版本会出来,也推荐新站点公开使用
  • 我说因为我到处读到有人发布关于将 2.5.x 转换为 3 的问题时,人们对他们说的第一件事就是它不应该在公共网站上使用,以消除这种性质的回复我想我会把它放进去。无论如何,我们现在不能将它们用于公共网站,因为我们是一家企业,需要确保我们的模板在我们将它们转移到新的 3.x 之前 100% 工作,因此为什么我开始现在转换这些东西。
  • Joomla! 3.0相当稳定,月底会出3.1,一键更新。考虑新项目 3 系列,因为它将获得新功能,所有开发都将集中在该系列上。 2.5.x 系列只会得到错误修复和更新。
  • 我们永远不会发布不稳定的东西。扩展开发者和模板者是否准备好是一个不同的问题。您是否在您的领域使用 jform?
  • 如前所述,我并不是说它不稳定,我需要先将我们构建的当前模板和扩展转换为与 3.x 一起使用,然后给它们发送文本以确保它们首先工作,这就是我现在正在做。我之前没有对扩展/组件等做很多事情,我在谷歌上搜索的所有内容都说不要使用 3.x,但我确信一旦我完成所有工作,我们将基于新的站点启动我们的新客户站点。

标签: joomla joomla3.0


【解决方案1】:

您的表单中是否有隐藏的输入字段<input type="hidden" name="task" value="" />

单击按钮时,将调用 Javascript 函数 Joomla.submitbutton(task)。这应该在您的布局中定义/覆盖以进行一些检查,然后调用Joomla.submitform(task),它将任务填充到隐藏字段并发送表单。

我认为这些功能有一天会改名。也许您仍然可以在没有 Joomla 前缀的情况下获得它们?

【讨论】:

  • 我对此很陌生,我没有写原始扩展名只是为了澄清。如果我列出 com_NAMEOFFILE 中的文件夹,或者有人指出哪个文件可以用来粘贴代码,这样我可以得到进一步帮助,表单页面中似乎有隐藏字段,但是我看不到任何形式的提交,但它必须在之前唤醒,因为这是从 joomla 2.5.9 副本的直接副本,并在相关文件的末尾添加了遗留。我确定它是在导致它的新 joomla 中更改名称或类似的东西,但我不确定是哪一点!
  • 您可以查看表单的源代码并搜索submitbutton。查看是否定义了名为 Joomla.submitbutton 的 Javascript 函数。您可以将其与文章的形式进行比较。还可以搜索隐藏字段,使用关键字task 您应该会很快找到它。另一件事是根据docs.joomla.org/…,表单必须命名为adminForm,ID 为adminForm。也许也检查一下。
  • 谢谢!!!你的明星 - 它是 id="adminForm"。非常感谢您的帮助,非常感谢!
【解决方案2】:

看看这个页面 - http://docs.joomla.org/Potential_backward_compatibility_issues_in_Joomla_3.0_and_Joomla_Platform_12.1

有些东西在 2.5 和 3.0 之间发生了变化,主要是处理删除 1.5 样式代码。此外,查看核心组件并将其用作参考,以验证您所做的是否正确。

【讨论】:

  • 我已经看过这个页面并添加了新的参考资料,我可以看到其中的差异。我确定这是导致问题的原因,但我已经多次检查了所有内容,但我看不出在哪里。
【解决方案3】:

JToolBarHelper:save(); 被替换为 JToolBarHelper::save2new();在进一步的 Joomla3 版本中

【讨论】:

    猜你喜欢
    • 2014-12-14
    • 2013-11-14
    • 2012-10-12
    • 1970-01-01
    • 2013-05-01
    • 2012-07-13
    • 1970-01-01
    • 2012-07-15
    • 1970-01-01
    相关资源
    最近更新 更多