中文站点-网站精选 - 逐浪!-Joomla! 中的列表
Joomla!是一套自由、开放源代码的内容管理系统,以PHP撰写,用于发布内容在万维网与内部网,通常被用来搭建商业网站、个人博客、信息管理系统、Web 服务等,还可以进行二次开发以扩展使用范围。其功能包含可提高性能的页面缓存、RSS馈送、页面的可打印版本、新闻摘要、博客、投票、网站搜索、与语言国际化。Joomla!是一套自由的开源软件,使用GPL许可,任何人随时都能下载 Joomla! 并立即使用它。
历史
Joomla!在2006年与2011年皆获得Packt颁发的最佳开源内容管理系统奖。[3]
第一个发行版本的Joomla! (1.0.0)发布于 (页面存档备份,存于互联网档案馆)2005年9月16日。是由Mambo 4.5.2.3版加上安全性修正后所分支发展的版本。
Joomla! 1.5 (2007年)则以全新的 MVC 框架为基础完全重写代码,是当时少数同时兼容 PHP4 与 5 的大型应用程序。[4]。
Joomla! 1.6 (2011年)再度以 PHP 5 为基础大幅度更改框架系统,加入ACL权限控管、更新机制、多层次分类并内置多国语系等等,替开发者提供了更强大的开发流程。
Joomla! 1.7 (2011年)开始抽出框架层,将 CMS 与核心框架分离,提供未来更多的更新空间。此时期的框架层开始支持 PHP CLI 命令行程序与 Daemon 守护进程编写、并能够独立开发Web应用程序。
Joomla! 2.5 (2012年)开始支持多种数据库,并提供更多核心功能的升级,使得2.5成为长期支持版(LTS),是3.x以前最稳定、使用数量最多的版本。
Joomla! 3.0 (2012年)引入Twitter Bootstrap,并组成 JUX 小组,全面升级系统的前后台UI机制,除了提供大量开发前端工具外,搭配全新设计的isis后台,让Joomla!成为世界第一套内置移动版后台的内容管理系统。
Joomla! 3.1 (2013年)加入标签功能(Tags)进入到核心标准,除了内置文章外,第三方扩展也可以自由使用全新的标签功能,并且移除了年久失修的代码高亮度外挂。
Joomla!Framework (2013年)全新的 Full-Stack Web 开发框架,摆脱 CMS 束缚,提供更多新标准如 HMVC[5], Lazy Loading, PSR coding standard, PHP namespace, Autoloader, RESTful 等等。
Joomla! 3.2 (2013年)加入文章版本控管与在线 App store 功能,现在可以从网站后台直接下载安装扩展。除此之外 CMS 部分开始支持 PSR-0 ,开发者将能够更轻易集成目前流行的库。
Joomla! 3.4(2015年二月) 正式版发布,提供更强大的后台UI,并逐步将核心轻量化,部分核心组件能够移除或者事后再安装。
Joomla! 3.5 (2016年三月) 开始支持 PHP7,提供自动更新通知,强化安全性,并进一步加强了许多后台 UX。
Joomla! 3.6 (2016年七月) 进一步强化后台 UX,能够更方便的管理菜单与分类内容,也提供开发者更便利的窗体API。
Joomla! 3.7 (2017年四月) 加入社群期待已久的自定义字段功能,从核心提供 CCK 应用的基础,也支持拖拉上传安装扩展建包,自定义后台菜单等等大量操作流程强化。
Joomla! 3.8 (2017年九月) 提供数个核心改进,例如更现代化的路由系统、最先进的 Sodium 加密算法,还有大量核心代码的升级。最重要的是开始加入未来 Joomla! 4 的兼容中介层,提供第三方应用迁移的准备时间。
Joomla! 3.9 (2018年十月) 发布3.9.0版本,原本3.9是作为4.x与3.x版本的最后缓冲版本,但为了修改系统核心以支持GDPR规范,3.9成为独立的Joomla!版本。[6]
发展路线
目前的 Joomla! 3.x 皆为 STS 短期支持,预计最近的一版 LTS 长期支持版会是 3.5。Joomla! 4 则预计将移除许多 PHP 5.2 时代的残留代码,集成前后台 Application 为单一入口,并导入 Composer 与 PSR 等目前流行的先进开发技术。而从 Joomla! 3.x 开始加入的 UCM (Unified Content Model) 统一内容模型将成为往后版本创建 CCK 应用的基础。
Joomla!从2014年4月25日停止分为LTS、STS长短期支持的模式,以求能够更快的更新系统、加入新的技术,不受LTS的制约,自Joomla!3.3之后,每一个第二位版号都是稳定版本,并代表着系统的修改,生命尽头在下一位版号发布,如3.4版之后就终结3.3版生命周期 (页面存档备份,存于互联网档案馆),第三位版号代表的是更新修正档发布,而第一位版号代表的是大幅度的调整更新。
3.8 至 3.9 是 3.x 系列的最后两个版本,除了大量将原有代码升级到最现代化的水准之外,也开始提供兼容未来 Joomla! 4 的中介层。
因为GDPR的原因,3.9成为独立的发布版本,4.x版本的时间则向后推延。直到2019/09/21发布的版本为3.9.12,发布原因为漏洞修补。[7]
3.10将成为3.x系列的最后一个版本,单纯为Joomla! 4.0的降阶版本,作为3.x过渡到4.x的缓冲,给予Joomla!网站管理员测试并升级4.0版本的过度。预期3.9.10将与Joomla! 4.0同时发布。[8]
Joomla! 4 是下一代Jomla!的版本,作为第一位版本号,Joomla!核心与接口都将有大幅度的变动,主要特点是改用 Bootstrap4 、 Frameworks 2.0 并加入大量现代化前端技术如 Web component 、CSS Grid 与 Flex box 等,因此将放弃对旧型浏览器的支持度。另外核心代码也经过大量改写,全面采用现代化 PHP 的开发标准,是自 1.6 以来最大的核心更动。且Joomla! 4 的php版本最低要求为 PHP 7.0,这是因为PHP 7.0提供了更好的运作性能,且为了能够继续朝向未来的发展方向靠拢。[9]Joomla! 4.0最新的开发版本为2019年8月19日发布的4.0.0 Alpha 11,预期将于2019年末或者2020年初发布4.0 Bata,2020下半年度Joomla! 4.0正式发表。
Joomla! 名称的由来
Joomla!来自斯瓦希里语的英文串法,意思是“all together”或“as a whole”。
它不单纯只代表内容管理系统,而是一个品牌名称。除了 Joomla!CMS 以外,另外还有 Joomla!Platform 与 Joomla!Framework 等相关的开源Web框架项目正在进行中。
其他
在2010年4月,微软签署了 Joomla!的贡献者协议(Joomla! Contributor Agreement)。[10][11] 提供WinCache这个针对在IIS下的PHP缓存加速器。[12]
架构
- 框架层
- Joomla!Platform 与 Joomla! Framework。以上两者的框架层已支持 PSR-0, HMVC, RESTful 等现代标准。而 CMS 因为历史包袱仅支持Legacy模式的功能,暂时还无法发挥框架层的全部特色。
- 库
- PHPMailer, Simple Pie等等
- 应用层
- 前后台各自为延伸自框架层的实体应用程序 (Application),并共享资料表。
- 扩展 (Extensions)
- 分为组件(Component)、模块(Module)与外挂(Plugin)三种型式,核心功能如内容管理、媒体管理、菜单系统皆是扩展的一环。每个组件皆采 MVC 架构开发,并由应用层的Router依据网址的约定原则指向到不同的组件管理页面。
- 显示层
- 支持 HTML, XML, JSON, Feed 等多种形式的显示格式,用来面对不同类型的应用。
- 模板
- 采用自制的模板引擎,并提供组件与模块的覆盖输出,可以在模板中借由增加程序文件的方式轻易取代内置显示画面,而无须Hack源代码。
- 前端工具
- 集成 MooTools, jQuery, jQuery UI, , LESS与IcoMoon等前端辅助框架或工具,方便设计师设计功能强大的UI
数据库支持
至2013年推出的3.1版为止,Joomla!已支持5种数据库,分别是:
- MySQL
- Oracle
- PostgreSQL
- SQL Server
- SQLite (目前仅框架层支持)
网站服务器支持
目前Joomla!直接支持的服务器软件为Apache与IIS,除此之外经过简单配置也可以运行在nginx与Lighttpd上。
适用示例与实例
Joomla!系统是一个通用性的网站系统,意指几乎所有类型的网站都可以在这个系统的基础下创建或发展,不论是个人使用的博客、一般企业使用的网站到大型的社交网站或新闻网站,透过丰富而多元的扩展,都可以找到对应的功能。快速、多样化而方便的扩展管理功能,减少建置的时间和成本,是最吸引用户选择这套系统的优点。
使用Joomla!建置的知名企业不胜枚举,在国外的网站市场中占有一席之地,以下的网站都是使用Joomla!建置的:
- 古根汉美术馆
- 宜家家居(科威特及阿拉伯)
- eBay
- Jaguar
- PlayShakespeare.com (Cultural) - http://www.playshakespeare.com (页面存档备份,存于互联网档案馆)
中文市场的努力推广下,也出现了许多知名企业或组织使用这套系统,作为网站建置的基础,例如以下的实际案例:
- 国立公共信息图书馆 http://publiclib.nlpi.edu.tw/ (页面存档备份,存于互联网档案馆)
- 台中市立梧栖国民中学 http://www.wcjs.tc.edu.tw/wuchi/ (页面存档备份,存于互联网档案馆)
- 台湾母语日网站 -澎湖县政府教育处 http://www2.penghunative.phc.edu.tw/ (页面存档备份,存于互联网档案馆)
- 国立台中特殊教育学校 http://www.tcspe.tc.edu.tw/(页面存档备份,存于互联网档案馆)
- 国立高雄师大附中 http://www.nknush.kh.edu.tw/(页面存档备份,存于互联网档案馆)
- 中兴大学实验林保育项目 http://plant-nchu.org/(页面存档备份,存于互联网档案馆)
- 幸福小栈 https://web.archive.org/web/20150601005156/http://happiness-edu.org/
- 中兴大学会计系 - http://gia.nchu.edu.tw/ (页面存档备份,存于互联网档案馆)
- 高雄医学大学图书信息处 - http://olis.kmu.edu.tw/ (页面存档备份,存于互联网档案馆)
书籍
英文书籍
- Marriott, Jennifer; Waring, Elin. The Official Joomla! Book. Addison-Wesley Professional. 2010. ISBN 0-321-70421-5.
- Dawson, Brandon; Canavan, Tom, Joomla Cash, Packt Publishing, 2007, ISBN 1847191401
- Graf, Hagen. Building Websites with Joomla. Packt Publishing. 2006. ISBN 1904811949.
- Graf, Hagen. Building Websites with Joomla 1.5 Beta 1. Packt Publishing. 2007. ISBN 1847192386.
- Graf, Hagen. Building Websites with Joomla 1.5 stable. Packt Publishing. 2008. ISBN 184719530X.
- LeBlanc, Joseph. Learning Joomla Extension Development: Creating Modules, Components, and Plugins with PHP. Packt Publishing. 2007. ISBN 1847191304.
- North, Barrie. The Joomla Admin Manual: A Step by Step Guide to a Successful Website. LuLu. 2007. ISBN 9780615146751.
- North, Barrie. Joomla A User's Guide: Building a Successful Joomla Powered Website. Prentice Hall PTR. 2007. ISBN 9780136135609.
- Rahmel, Dan. Beginning Joomla: From Novice to Professional. Apress. 2007. ISBN 1590598482.
- Rahmel, Dan. Professional Joomla. Wrox. 2007. ISBN 978-0-470-13394-1.
中文书籍
- 陈红飞. PHP内容管理系统:Joomla快速建站指南. 电子工业出版社. 2009. ISBN 978-7-121-07658-9.
- 欧展嘉. Joomla 1.5.x網站架設寶典. 松岗. 2007. ISBN 978-986-125-971-0.
- 王永福. Joomla架站123:圖解入門很簡單(已釋放免費電子書版本). 碁峰. 2007. ISBN 978-986-181-268-7.
- 王永福 / 董羿廷. Joomla 1.5架站123-圖解入門很簡單(已釋出超過300頁免費電子書版本). 碁峰. 2009. ISBN 978-986-181-772-9.
- 郭, 顺能. 使用 Joomla 1.7 架站的 13 堂課. 台湾: 碁峰. 2011 [2017-11-16]. ISBN 978-986-276-328-5. (原始内容存档于2020-09-22).
- 郭, 顺能. Joomla! 2.5 素人架站計畫. 台湾: 碁峰. 2012 [2017-11-16]. ISBN 978-986-276-563-0. (原始内容存档于2020-09-22).
- 洪圣惠. 讓我們架站趣-Joomla!2.5. 上奇信息. 2013. ISBN 978-986-257-684-7.
- 李, 顺能. Joomla! 素人架站計畫 Power Pack. 台湾: 碁峰. 2013: 328 [2017-11-16]. ISBN 978-986-276-942-3. (原始内容存档于2020-09-22).
- 李, 顺能. Joomla! 3.x 素人架站計畫. 台湾: 碁峰. 2015: 688 [2017-11-16]. ISBN 978-986-347-682-5. (原始内容存档于2020-09-22).
- 李, 顺能. 使用J2Store開設網路商店的10堂課:商品管理x物流x金流x客服一次搞定. 台湾: 碁峰. 2018: 416 [2018-07-24]. ISBN 978-986-476-848-6. (原始内容存档于2020-09-22).
引用
- Joomla 3.9.22 Release. Joomla.org. 2020-10-06 [2020-10-06]. (原始内容存档于2020-11-28).
- Joomla 4 Beta 5 and Joomla 3.10 Alpha 3 are here: test them now!. Joomla.org. 2020-10-27 [2020-10-27]. (原始内容存档于2020-12-20).
- 2006 Open Source Content Management System Award Winner Announced. Packt Publishing. 2006-11-14 [2007-03-08]. (原始内容存档于2007-03-06).
- 存档副本. [2007-06-29]. (原始内容存档于2007-07-01).
- Joomla!Framework Controller Usage
- The Privacy Tool Suite by Joomla.3. 2018-10-30 [2019-10-28]. (原始内容存档于2021-01-11).
- Joomla! 3.9.12 Release. Joomla! Developer Network™. 2019-09-24 [2019-10-28]. (原始内容存档于2020-10-25).
- The Privacy Tool Suite by Joomla.3. 2019-08-13 [2019-10-28]. (原始内容存档于2021-01-11).
- Babker, Michael. Looking Forward with Joomla! 4. Joomla! Developer Network™. [2017-11-09]. (原始内容存档于2020-11-11) (英国英语).
- Request for Comment: Joomla! Contributor Agreement. [2010-05-26]. (原始内容存档于2016-03-04).
- 微軟簽署 Joomla! 貢獻者協議. [2010-05-26]. (原始内容存档于2013-05-16).
- Performance improvement in Joomla using WINCACHE user cache. [2010-05-26]. (原始内容存档于2015-01-13).