AI实践哪家强?来 AICon, 解锁技术前沿,探寻产业新机! 了解详情
写点什么

WordPress.com 使用 JavaScript 替换掉 PHP

  • 2015-12-02
  • 本文字数:1556 字

    阅读完需:约 5 分钟

近期,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 好读者)。

2015-12-02 18:004749

评论 1 条评论

发布
用户头像
nodejs版的wordpress在哪里?
2019-07-12 09:46
回复
没有更多了
发现更多内容

融云 WICC 2023 定档!「出海嘉年华」穂城来袭!

融云 RongCloud

通信 社交 融云 出海 wicc

【经验总结】你想知道的BGA焊接问题都在这里

华秋PCB

工具 电路 PCB PCB设计 焊接

龙智即将亮相2023上海国际嵌入式展,为嵌入式开发提供全球领先解决方案

龙智—DevSecOps解决方案

嵌入式软件 嵌入式设计 嵌入式开发

Neuron 提供免费无限时试用:完整体验数十种工业协议连接

EMQ映云科技

工业物联网 网关软件 工业协议

领先芯片供应商u-blox通过Perforce Helix Core加强协作,实现基于组件的开发

龙智—DevSecOps解决方案

组件化 芯片设计

软件测试 | 接口测试

测吧(北京)科技有限公司

测试

国产操作系统如何构建自己的生态

Onegun

国产化 国产操作系统

软件测试/测试开发丨学习笔记之列表、元组、集合

测试人

Python 软件测试 自动化测试 列表 测试开发

一文看懂OpenStack SR-IOV

统信软件

“敏捷教练必修课程”7月22-23日 ·A-CSM认证在线周末班【提前报名特惠】CST导师亲授

ShineScrum

Scrum 敏捷 敏捷精髓 敏捷实践 A-CSM

【论文分享|SIGMOD'22】WeTune 自动发现和验证重写规则

Databend

面面俱到!一份囊括35+核心知识点的Java架构师面试文档

小小怪下士

Java 程序员 java面试 Java八股文

2023 年度中国 DevOps 现状调查|有奖问卷

CODING DevOps

DevOps 云端IDE cloudstudio

“伙伴+华为”体系,数字时代的新航标

脑极体

伙伴 体系

生产环境质量保障的重要性

老张

质量保障 稳定性保障

Apache Kylin 5.0.0-alpha 正式发布,能力全方位提升!

Kyligence

开源 Apache Kylin

MobTech ShareSDK|助力预热618

MobTech袤博科技

软件测试 | 开发接口

测吧(北京)科技有限公司

测试

打造面向未来的开发者服务新范式,龙蜥社区开发者服务平台 devFree MeetUp 硬核启动!欢迎报名

OpenAnolis小助手

Meetup 龙蜥社区 基础设施SIG devFree 开发者服务平台

4大特性看Huawei Cloud EulerOS为开发者带来平滑迁移体验

华为云开发者联盟

云计算 后端 华为云 华为云开发者联盟 企业号 5 月 PK 榜

软件测试 | spyne开发接口

测吧(北京)科技有限公司

测试

2023年汽车软件行业趋势分析:安全性是汽车软件开发的重大挑战2023年汽车软件开发

龙智—DevSecOps解决方案

汽车软件安全 电动汽车软件 汽车软件开发

小程序6大开发框架对比分析

Onegun

小程序 小程序框架 小程序容器

“全球金牌课程”6月17-18日 · CSM认证在线周末班【提前报名特惠】CST导师亲授

ShineScrum

Scrum 敏捷

ControlNet: 控制扩散模型的魔法

Zilliz

AIGC Towhee Stable Diffustion controlnet

LLMs 诸神之战:LangChain ,以【奥德赛】之名

Zilliz

Milvus AIGC LLM langchain

数据在 Mocaverse 项目启动过程中是如何发挥作用的

Footprint Analytics

区块链游戏 NFT 链游 Mocaverse

软件测试/测试开发丨Python控制流-判断&循环

测试人

Python 软件测试 自动化测试 测试开发

FP&A整合,全面预算管理的制胜法宝

智达方通

全面预算管理 财务规划和分析 FP&A

图数据库 NebulaGraph 的内存管理实践之 Memory Tracker

NebulaGraph

数据库 内存管理 图数据库

WordPress.com使用JavaScript替换掉PHP_JavaScript_Abel Avram_InfoQ精选文章