Joomla 2.5 中带有 JavaScript 的可扩展列表
Expandable list with JavaScript in Joomla 2.5
我继承了一个 Joomla 2.5 大学网站。
有一个大学结构的页面,看起来像一棵树。当用户单击其中一项时,该项目会展开,而其他所有内容都会折叠。单击几下后,您可能会看到:
- 学术结构
- 校长
- 校长
- X副校长
- Y副校长
- 李四
- phone
- 邮件
- Z副校长
- 部门
- 程序
- 行政结构
- 治理结构
该站点的工作人员针对树的每一种可能扩展制作了 65 篇不同的文章。 无法维护自动生成HTML,零一致性,每一页都无法修复。
我会删除所有的文章,并用一个可展开的树做一个页面。我已经制作了一个 JSON 的结构,它小于 1 MB(带有照片)所以我将加载它折叠。
我希望人们只编辑 JSON 而不是文章代码本身。因此,我需要一个脚本来将正确的格式应用于不同的 JSON 树。例如,所有 'person' 个节点的样式应相同。
如何在 Joomla 2.5 中启用 JavaScript 可扩展树?我只能访问 Joomla 管理面板,不能访问服务器本身。编辑器中有一个启用标签的选项,这就足够了吗?如果我只是在 Joomla 文章中插入一些 JavaScript 有什么问题吗?
我应该为这个项目使用什么?我在想 jQuery 和 jsTree。
从 Joomla 配置中,您可以禁用标准的 WYSIWYG 编辑器并在任何内容文章中插入 "raw" HTML - 包括 JS - 但您仍然会遇到问题,因为默认情况下内容视图转义最多的 JS 内容。
我建议换一种方式。
开发一个新的 Joomla 模块,您可以在其中放置所有自定义 HTML 和 JS。您可以复制并适配 "mod_custom" 模块类型,也可以遵循 this tutorial.
从 Joomla 管理面板(模块 -> 新建 -> YourModuleType)创建此模块的实例并将其分配给假位置(即 "tree")。
通过在文章内容中写入 {loadposition tree}
将模块加载到您的文章中。 More about loadposition.
瞧瞧! :-)
我建议使用 模块 因为作为开发人员,编辑它比编辑 Joomla 文章更简单;我建议仍然使用 article 作为容器,因为它更容易 link 一个菜单项并处理 URL / 元数据 / 等等...
我继承了一个 Joomla 2.5 大学网站。
有一个大学结构的页面,看起来像一棵树。当用户单击其中一项时,该项目会展开,而其他所有内容都会折叠。单击几下后,您可能会看到:
- 学术结构
- 校长
- 校长
- X副校长
- Y副校长
- 李四
- phone
- 邮件
- 李四
- Z副校长
- 部门
- 程序
- 校长
- 行政结构
- 治理结构
该站点的工作人员针对树的每一种可能扩展制作了 65 篇不同的文章。 无法维护自动生成HTML,零一致性,每一页都无法修复。
我会删除所有的文章,并用一个可展开的树做一个页面。我已经制作了一个 JSON 的结构,它小于 1 MB(带有照片)所以我将加载它折叠。
我希望人们只编辑 JSON 而不是文章代码本身。因此,我需要一个脚本来将正确的格式应用于不同的 JSON 树。例如,所有 'person' 个节点的样式应相同。
如何在 Joomla 2.5 中启用 JavaScript 可扩展树?我只能访问 Joomla 管理面板,不能访问服务器本身。编辑器中有一个启用标签的选项,这就足够了吗?如果我只是在 Joomla 文章中插入一些 JavaScript 有什么问题吗?
我应该为这个项目使用什么?我在想 jQuery 和 jsTree。
从 Joomla 配置中,您可以禁用标准的 WYSIWYG 编辑器并在任何内容文章中插入 "raw" HTML - 包括 JS - 但您仍然会遇到问题,因为默认情况下内容视图转义最多的 JS 内容。
我建议换一种方式。
开发一个新的 Joomla 模块,您可以在其中放置所有自定义 HTML 和 JS。您可以复制并适配 "mod_custom" 模块类型,也可以遵循 this tutorial.
从 Joomla 管理面板(模块 -> 新建 -> YourModuleType)创建此模块的实例并将其分配给假位置(即 "tree")。
通过在文章内容中写入
{loadposition tree}
将模块加载到您的文章中。 More about loadposition.
瞧瞧! :-)
我建议使用 模块 因为作为开发人员,编辑它比编辑 Joomla 文章更简单;我建议仍然使用 article 作为容器,因为它更容易 link 一个菜单项并处理 URL / 元数据 / 等等...