← 返回

我用AI写了个兼容MD的博客,取代我的WordPress

作者:高仙森 最后修改:2026.1.10


本文主要分享自己的心路历程,如需看效果与源码,可直接跳转文末自助。

博客,一个非常古老的记忆。很多人不知道,我上大学时期除了建过返利网(一定要返利,已关)、PT站(不记得什么名字了,已关),还有建过一个博客(Blog),更重要的是,这个博客我虽然没有经常更新,但是我一直在维护,从2012年到2016年,足足维护了14年之久!!很多00后可能只听说过微博,完全不知道博客是啥。不过反正是历史的眼泪,就不多作介绍了。

image-20260110161845285

博客第一篇博文

博客原貌

博客当年的样子

现在么,信息爆炸时代,微博、短视频盛行,最早的微博只能140字,而抖音更是只能发15秒视频,短平快带来碎片化的阅读和极致的信息量,看公众号的都少了,更别提博客这种古早个人站点了。

因此,继续每年花时间花精力去维护一个没什么浏览量的网站,性价比显得非常的低,所以一直想把它取代掉。

一、维护成本

维护一个网站,往简单了说,需要续费域名、续费云空间(虚拟主机/VPS等)、网站系统三大件。网站系统这块,我采用的是全球最流行的WordPress。就跟你的Windows需要系统升级打补丁一样,一个在互联网上完全暴露的网站系统,一天到晚要承受的攻击远超想象。除了针对系统漏洞的,还有评论区恶意灌水灌广告等形形色色的攻击。

因此,不仅要维护WordPress本身的攻击,为了防恶意评论又装了对应插件,为了防攻击装了防火墙插件,各种网站主题装了主题插件,而这些插件本身有需要维护它们的更新。

最关键的是,站点需要定期备份,除了服务器的文件,还有数据库都得备份,维护成本真的很大。

有用过WordPress的朋友可能会说,插件这些都能设置自动更新,没错,但是,插件作者跑路了呢?我自己改的主题呢(这也是为什么我放弃了自己当年看着挺好看的主题)?云虚拟主机禁止超大超长时间的更新呢?

二、替代方案

1.公众号。有的朋友会发现,我常年停更的公众号又开始更新了,没错,这是我的替代方案之一,把以前写的东西蚂蚁搬家往公众号搬。

2.本地储存。把文章全部转成MarkDown本地储存。

等下,选择这两个替代方案,就意味着宣判我Blog的死刑,维护了14年就这么下线,说实话还是有点舍不得的。而且,并不是所有内容都适合往公众号发。

那么,有没有一种可能,技能随时本地编辑查看,生成的内容又能快速上传公众号,自动同步博客站点呢?也就是,能有一套直接将MarkDown文件丢进去就能变成网站的东西?

有的兄弟,有的。但是,如果我用别人现成的系统,那就意味着接受了他们的好,也要接受他们的屎——大量用不到的功能和与WordPress一样的无休止更新。

因此,我选择:

3.建站。自己建设一套完美兼容MarkDown语法的轻量Blog站点。

三、技术路线

既然不用现成的,我自己手写毛估估得小半年,不如直接交给AI完成。

1.梳理需求/实现功能

2.AI码农

因为用惯了ChatGPT,而且之前让ChatGPT做过一个网页小工具,完成的比较出色,因此这项工作交给了它。我使用的是免费版。

因为需求是逐步增加的,我这个不靠谱的甲方也是想到哪任务布置到哪,大致是以下的对话:

image-20260110204228219

AI很快就给出了目录结构、图片路径转换、安全设计等方案,并直接给出了对应的核心代码。

├── index.php
├── article.php
├── /documents/
│   ├── 低成本实现Atmos.md
│   ├── 低成本实现Atmos.assets/
│   │   ├── image-xxx.png
│   │   └── mmexportxxx.jpg
│   └── 另一篇文章.md
├── /lib/
│   └── Parsedown.php
├── /public/
│   ├── style.css
│   └── highlight.css
└── .htaccess

将AI给的代码按它给的文件目录结构分别储存并上传到服务器中。其中,parsedown.php、两个css样式文件都没给出源码,也没做进一步介绍,因此,直接追问即可。

image-20260110204806629

至此,一个非常简陋的静态blog站点就诞生了。但是,随之而来是巨多的bug与需要优化的地方。

比如,我尚未完全下掉现有的WordPress站点,因此是放在一个miniblog文件夹中进行访问,而AI给的是根路径绝对值,造成内容无法访问。

解决bug当然也不能自己出力,继续将遇到的问题和AI说,并加上进一步的需求。

image-20260110205218312

image-20260110205239577

到这里,给出的站点功能基本已经比较完善了。正当我兴致勃勃的上传了第二篇文章,问题来了。文章未识别。老办法,给AI指出问题所在即可。

image-20260110205416450

解决完基础bug,接下来就是美化和进一步的功能追加。

image-20260110205552464

以及解决新问题。

image-20260110205620119

image-20260110205640204

image-20260110205730763

几番斗争下来,AI也开始摆烂,开始只给修改部分的代码,不肯给完整源码了。自己动手修改源码是不可能的,继续提要求。

image-20260110205843940

这个时候,站点已经无限接近最终版了,但是,遇到了一个ChatGPT始终无法解决的问题——页面元素遮挡。在文章页面点击目录,跳转到对应的章节时,顶部的header会挡住一两行字。无奈之下,请了个外援,Gemini。

image-20260110210355463

直接打包完整的站点源码,描述遇到了什么问题,Gemini这边非常顺利,直接解决问题。

至此,我的需求已经100%完成。我还让AI对比总结我这个站点与WordPress相比,实际运行中的资源开销情况。

image-20260110211443511

四、Demo与源码下载

Demo:https://mrga0.com/miniblog

源码:https://github.com/gxj8885718/miniblog

五、感叹以及写在后面

AI就是下一个取代流水线上工人的机械臂/机器人,但本文纯手打。

关于评论:评论功能能做,但是没有反垃圾的能力。所以放弃了。

关于同步文章:文章的同步,我用OneDrive+NAS,Windows上写文章自动同步进OneDrive后,NAS中的备份任务自动把md和assets同步进服务器。