本文最后更新于 2026年5月11日。
简单直接地回答:Directus 开发插件(Extensions)通常比 WordPress 更现代、更规范,但对开发者的技术栈要求更高。
如果你习惯了 WordPress 的钩子(Hooks)和 PHP 开发,Directus 会让你觉得“更整洁”;如果你是前端背景,Directus 简直是天堂。
以下是两者的详细对比:
1. 技术栈差异
-
WordPress (PHP/Legacy): 主要是 PHP。虽然现在有了 Gutenberg (React),但核心逻辑、数据库操作和插件架构依然深度绑定 PHP。
-
Directus (TypeScript/Modern): 完全基于 Node.js。开发插件主要使用 TypeScript/JavaScript。它的 UI 部分是用 Vue.js 写的。如果你熟悉现代前端开发(Vite, npm, ES Modules),你会觉得 Directus 非常亲切。
2. 开发体验 (DX)
| 维度 | Directus 插件开发 | WordPress 插件开发 |
|---|---|---|
| 工具链 | 官方提供 directus-extension 脚手架,一键生成项目,自带 Vite 编译。 |
相对原始。虽然有 wp-scripts,但很多插件还是手动组织文件。 |
| API 规范 | 高度规范化。扩展分为 Endpoint (接口), Hook (钩子), Interface (界面组件) 等固定类型,逻辑清晰。 |
高度自由但也混乱。Action 和 Filter 遍布全局,新手很容易写出“面条代码”。 |
| 热更新 | 支持非常好。修改代码后,Vite 自动重载,效率极高。 | 传统开发模式,通常需要手动刷新或配置复杂的同步工具。 |
| 文档 | 文档现代、整洁,示例代码多为 TS/JS。 | 文档极其庞大(甚至有碎片化倾向),存在大量过时的教程。 |
3. 核心概念对比
-
Directus (扩展模型):
-
Hook: 监听数据操作(创建前、删除后),语法非常类似 Express 中间件。
-
Interface: 让你自定义后台的输入控件(比如做一个漂亮的选择器),这是 Directus 的杀手锏,基于 Vue 编写。
-
Display: 定义数据在列表页如何显示。
-
-
WordPress (插件模型):
-
Hooks (Action/Filter): 几乎可以修改系统的任何角落,能力极强但容易导致冲突。
-
Shortcodes/Blocks: 用于前端展示,现在的 Block 开发(React)门槛显著高于以前。
-
4. 谁更容易上手?
-
选 Directus 的情况:
-
你更喜欢 JavaScript / TypeScript。
-
你希望开发的是一个“数据平台”或“Headless 后端”。
-
你厌倦了 PHP 那套复杂的全局变量和过时的函数名。
-
-
选 WordPress 的情况:
-
你习惯 PHP。
-
你需要极其庞大的现成生态(很多功能不用写,直接买插件)。
-
你的项目是传统的 SEO 博客或门户网站,而不是纯应用接口。
-
总结
Directus 开发插件更容易“写得好”。它的架构强制你按照现代软件工程的逻辑去组织代码,减少了因版本升级或插件冲突导致的崩溃风险。
WordPress 开发插件更容易“跑起来”。因为它的门槛极低,甚至随便在一个 functions.php 里写几行就能生效,但后期的维护和性能调优通常比 Directus 痛苦得多。
你目前的技术栈主要是什么?如果是 JavaScript,直接冲 Directus 准没错。