我将努力将这个项目作为一个扩展,以便每个人都可以轻松地将其插入到自己的 Joomla! 安装中,并立即开始使用。目前我将为 J! 1.5 开发这个项目。稍后可以轻松地使其兼容或移植到 J! 1.6。
首先,我将创建一个组件来处理前端 JavaScript 发出的所有 AJAX 请求。这些任务包括,例如:saveMenuItemTitle、saveModuleTitle、saveMenuItem 等。一个更大的挑战是保持 JavaScript 模板独立,特别是在识别菜单项和模块标题的情况下。对于模块,我将创建一个自定义模块边框,其样式可以附加到所有模块上,以使它们可编辑。
我还会创建一个系统插件来支持这个组件。这个插件的工作是包含 JavaScript,以便用户在登录并具有相应权限后可以在任何页面进行更改。还有一个内容插件将支持从前端编辑文章。
我还可能会为用户提供一种机制来切换原地编辑的开/关状态。这在菜单项标题(即链接)的情况下尤其重要。这可以通过一个模块或其他方式(待定)来实现。
我将按照以下顺序处理所有任务
-
菜单项、模块和文章标题的原地编辑:JavaScript 将识别页面上的所有标题并使其可编辑。目前的想法是,当用户将鼠标悬停在 these 标题上时,它们会被突出显示,然后用户可以单击它们进行编辑。
还将有一种方法让用户可以切换原地编辑的开/关状态。我期待社区反馈他们希望如何实现这一点。
-
在模态弹出窗口中编辑文章:当具有足够权限的用户登录后,文章标题旁边将显示一个编辑图标。用户点击此图标时,文章的WYSIWYG编辑器将在模态弹出窗口中显示,用户可以在其中进行更改并保存文章。
-
在模态弹出窗口中编辑菜单项和模块参数:与上述模式类似,用户将看到模块和菜单项标题旁边的编辑图标,她可以点击该图标以查看一个模态弹出窗口,在其中编辑并保存其参数。
-
模块的拖放放置:这将允许用户拖放模块以放置到新位置。放置将导致向组件发送AJAX请求,然后组件将相应地设置受影响模块的“位置”和“顺序”参数。