BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

WordPress.com使用JavaScript替换掉PHP

| 作者 Abel Avram 关注 4 他的粉丝 ,译者 董志南 关注 0 他的粉丝 发布于 2015年12月3日. 估计阅读时间: 5 分钟 | QCon北京2018全面起航:开启与Netflix、微软、ThoughtWorks等公司的技术创新之路!

亲爱的读者:我们最近添加了一些个人消息定制功能,您只需选择感兴趣的技术主题,即可获取重要资讯的邮件和网页通知

近期,WordPress.com已经用Web技术和RESTful后端API来替换原来使用PHP编写的管理后台。

当提到为什么WordPress.com决定将管理后台的编写语言从PHP换成JavaScript时WordPress.com的母公司,Automattic Inc.的创始人兼CEO Matt Mullenweg说道:该管理平台的建立已经难以适应即将到来的工作变化,并且也不利于WordPress的优势发挥。这次调整所影响到的主要部件是系统的管理主界面,该界面在3.8版本时已经有过一次重建,但这次重建却让Mullenweg觉得“渐进式的调整并不会给我们想要的重大改进。”他还补充道,“向后的兼容性问题以及没有采用JavaScript”才是造成系统界面成为现在这个样子的主要原因。

Automattic决定重新回到2014年来使用Web技术——JavaScript、HTML、CSS、Node.js、React、Flow、WebPack、Babel,并且通过RESTful API来访问后端,从而打造一个名为Calypso的全新管理界面。Calypso项目负责人Andy Peatling还曾写过一篇文章,阐述了对于一家使用PHP/MySQL的公司改用JavaScript有多么重要的意义。刚开始他们只有几个高级JavaScript程序员来推动这个项目,其他人都是“被迫”参与Calypso项目的。他们刚开始还使用了Trac作为项目管理工具,并且只做很少量的代码审查。当他们开始使用GitHub以及提交代码后的Pull Request System时,代码审查才让他们意识到“内部的协作原来还能这么简单,以及个人工作完成后如何获取更多更好的反馈。”尽管有些人最初是被迫加入到这个项目当中的,代码审查还是“极大地增强了整个代码库的质量并且帮助所有人在JavaScript的技巧上有了明显的提升。”20多个月后,他们也从最初的7名开发人员增加到127名开发人员,并产生了26000次的代码提交。整个团队都实现了持续的内部融合。

全新的系统界面是一个单页面的应用系统,该系统具有响应式设计,并可适应于多种尺寸的屏幕大小。根据该系统的功能比较表,Calypso由于具有接近即时页面加载,即时发布,多目标页内预览,无需重载、实时应用变更等功能而变得更加迅速。

Peatling评论道,使用JavaScript响应式设计的其中一项好处是创建桌面端或手机客户端应用程序比原来更容易了。

“在2015年中,Calypso代码库已经足够优秀以至于可以在网络浏览器之外进行使用。由于Calypso项目完全是由Javascript,HTML和CSS编写而成的,因此它能通过创建轻量级的Node.js服务器进而在设备本地运行。通过使用名为Electron的技术,我们建立了本地的桌面客户端,并在系统内部运行相同的代码。我们首先建立Mac版的桌面客户端,该客户端现在已经可以提供下载,很快我们就会上线Windows版和Linux版的桌面程序。当我看到这些程序逐个上线,并且内部已经开始使用的时候,真的开始觉得之前我们为了构建Calypso代码库所付出的所有辛苦都得到了证明。”

Automattic已经对Calypso项目的源码进行了开放,但是Mullenweg称,他们仍然有“一堆问题去解决插件、扩展性、贡献、Windows和Linux发行版、API速度、本地化等问题以及深度融合the WordPress.com API和WP-API以便于它能更好地与Core WordPress进行协作。”当然,他们也将问题留给开发者社区来决定是否用Core WordPress中的Calypso所包含的内容来替换当下的管理界面

根据W3Techs的最新统计表明,WordPress如今被全世界1/4 的内容管理系统所使用,相比于它们2011年的数据提高了13%。

查看英文原文:WordPress.com Replaces PHP with JavaScript


感谢张龙对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入InfoQ读者交流群InfoQ好读者(已满),InfoQ读者交流群(#2)InfoQ好读者)。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

背后的实质含义是后端服务API化 by Wong Peter

rt

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

1 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT