上周,一个外包团队的兄弟给我打电话,声音里透着疲惫:"又来了一个企业官网的需求,两周后交付,我TM心态崩了。"
我问他:"又是从零开始写后台?"
他叹了口气:"不然呢?每次都是这套东西——用户管理、内容管理、权限控制、后台前端……做一个企业官网,一半时间耗在后台。"
我问他:"你们没用 CMS 吗?"
他反问:"WordPress?那玩意儿太老了,PHP 技术栈跟我们的 Vue 项目不搭。Strapi 倒是能用,但得自己部署、配置、搞安全加固 오히려麻烦。"
这种情况我相信很多外包团队都遇到过。今天聊聊我们是怎么解决的。
外包项目的真实痛点
做外包有个特点:需求都差不多。
企业官网嘛,逃不过这几样:
- 首页 + 关于我们 + 联系我们
-
- 产品展示 / 案例展示
-
- 新闻动态 / 博客
-
- 用户留言 / 在线预约
但是!每个客户都觉得自己是独一无二的,要求这里加个字段、那里改个流程。
以前我们的做法是:
- 搭后端框架(Express/Koa/Egg)
-
- 写数据库模型
-
- 写 RESTful API
-
- 搭管理后台(Vue + Element UI)
-
- 写前端展示页面
-
- 联调、测试、部署
一个官网,后台占了一半工作量。而且每个项目都差不多,就是换个皮肤。
有没有更省力的办法?
后来我们尝试了几种方案:
方案一:WordPress
优点是生态强大,插件多。但技术栈太老,PHP 现在不好招人。二次开发要写 PHP,跟我们的前端技术栈不统一。
方案二:Strapi
Headless CMS,API 驱动,技术栈还算现代。但需要自己运维服务器、配置数据库、搞定安全加固。中小企业客户可不会帮你维护这些。
方案三:自己造轮子
内部封装了一套 CMS 基础框架,每次新项目基于这个改听着不错,但维护成本高,每次前端升级都要跟着改。
方案四:DoraCMS
说实话,一开始我没抱太大希望。但用了一阵子,发现几个点确实解决了我们的痛点:
1. 部署确实快
一行 Docker 命令就起来了:
docker compose up -d
客户要部署到自己的服务器?我们给客户一个 Docker 命令,比以前教客户配 Node.js + MongoDB + Nginx 简单多了。
2. 管理后台现成的
不用再每次给客户写后台了。用户管理、角色权限、内容审核、分类标签……这些基础功能都有了。客户自己就能上去更新内容,不用每次找我。
3. 前端可以分开
他们官方有用户端前端代码,我们可以在此基础上定制样式。不喜欢也可以只用后端 API,自己写前端展示。灵活性有。
4. 双数据库切换
这个功能我们还没实际用到,但理论上客户中途想从 MongoDB 换成 MySQL,不用重写代码。对外包来说挺实用。
实际效果怎么样?
用了一段时间,说说真实的感受:
省时间是真的 以前做一个企业官网,后台 + 联调要 5-7 天。现在后台直接用现成的,2-3 天就能做完主要展示页面。客户还能自己上去改内容,我们少了好多次修改。
维护成本降低 客户有问题直接找后台,不用找我们改代码。之前很多"帮我加个字段"的需求,现在客户自己在后台就操作了。
但也有不完美的地方
- 默认主题样式比较基础,需要花时间定制
-
- 文档是中文的,对英文开发者不太友好
-
- 社区不大,遇到奇怪问题只能自己钻研
我的建议
如果你也是外包团队,我建议试试。不是什么"神器",但确实能省不少重复劳动。
重点是:先把一个项目完整做下来,看看哪些环节能省时间,哪些功能需要二次开发。每个人的需求不一样,别人的经验只能参考。
至于为什么标题叫"外包团队都在用"——其实只有我们团队在用 : ) 但如果你的情况跟我们差不多,应该也会觉得好用。
本文只分享个人使用体验,不构成任何推荐。选不选、怎么选还是要看项目具体需求。