大家好!第二阶段已经完成,我将介绍这段时间取得的进展。
关于项目
正如我在第一篇博客文章中所说,Joomla中的Web服务是一个API层,帮助第三方开发者与Joomla网站合作。这将能够进一步发展Joomla CMS。
目前,以下组件被Web服务覆盖
- com_banners
- com_categories
- com_config
- com_contact
- com_content
- com_fields (NEW)
- com_installer (NEW)
- com_languages (NEW)
- com_menus (NEW)
- com_messages (NEW)
- com_newsfeeds
- com_plugins
- com_privacy
- com_redirect (NEW)
还有很多有趣的工作要做,我们需要实现计划中的剩余组件,用测试覆盖Web服务,并创建文档,但首先要做的是首要任务。
在过去的一个月中,以下工作已完成。
我实现了复杂的组件,如
- com_fields现在使用API,您可以为文章、联系人、用户创建字段,当您请求每个对象时,这些字段都会显示。
- com_languages使用这个组件,您现在可以在Joomla中安装语言,将两种不同语言的文章相互关联。您还可以创建和删除用于覆盖基本常量的常量。
我在这些组件上遇到一些困难,因为有很多工作与其他组件相交,特别是com_content,这仍然需要改进抽象和总体逻辑。
此外,在com_languages中覆盖常量时也有一些复杂性,因为它与文件系统交互。
我实现了简单的CRUD组件
- com_messages
- com_redirect
- com_menus(仅CRUD)
您可以在这个视频中看到网络服务部分的工作
下一步行动
完成com_menus组件的工作是必要的,这也是一个复杂的组件,因为菜单项的类型可以是不同的:文章、标签、联系人、用户等。主要困难因此产生。
在接下来的一个月中,计划编写Joomla网络服务的文档。这是项目非常重要的一部分,因为文档将帮助第三方开发者了解API。
如果能有时间覆盖整个API层测试那就更好了。这将有助于发现可能的错误和问题,并加快未来的开发。
个人结论
第二阶段很激动人心。首先,我对Joomla CMS有了更深入的了解,这让我能够更快地开发新的组件。其次,第二阶段的任务更加复杂,也更有趣。
第三阶段非常重要,您需要有时间完成开发并将所有内容整合到一个完整的代码中,包括文档和测试 - 这将创建一个完整的Joomla网络服务产品!