博客系统4.0版本发布!

没错,鸽了这么多天,博客系统终于更新了,本次更新耗时将近三个多月(虽然大部分时间在准备面试哈哈),更新内容非常多,大家一起来看看吧!

后端重构

后端之前采用echo框架,现在使用gin作为最新的框架,同时删除了v2版本接口,只保留了最新的v3版本接口。同时我也对项目结构进行了优化(算起来这后端已经重构过三次以上了,害)。。

目前后端总代码行数10086行(草,居然这么巧。。这个只是go的代码数,其他的就不统计了)

插件功能

这个就是本次更新的最重要的部分了!之前的内容全都是我自己一个人开发的,但是后面我的空闲时间越来越少,所以本系统如果想要发展的话,就必须可以扩展,而扩展最好的方法就是插件!所以本次更新我花费了非常多的时间在上面,目前博客系统的插件使用JavaScript作为开发语言,同时我把博客系统很多功能都删掉了。。。因为后面我都打算使用插件来复现。。。所以目前博客系统只保留了最简单的文章,日记和文档这三大功能,其他的比如友人帐,我的豆瓣等等都打算用插件来实现。目前我只开发了下面这几个插件

所以这次版本功能功能反而比以前少了,但是扩展性却比以前强了非常多!

插件开发其实不算太难,我本人提供了很多现成的API可以进行调用,比如下面这个就可以发送一个网络请求。

目前插件功能还不够完善,开发文档我也还没写(主要是我精力真的太少了QAQ没时间搞),后续还会不断进行优化!

顶部导航栏和侧边栏支持修改

之前群里一直有人反馈要修改这几个地方,因为这个要实现很麻烦的,所以我才一直拖到现在,不过在经过我的调研后,现在终于可以修改了。

下面这个是顶部菜单修改的位置

1624095670885.png

下面这个是侧边栏(这个取决于你安装了什么插件,我们可以直接拖动卡片来进行侧边栏设置,是不是非常方便呢?)

其他的一堆小更新

因为涉及到重构,所以还修复了很多东西,因为涉及的东西太多了,这里就不说了。

主题功能

这个就是第二个重大更新的内容了,这个也花了我非常多时间,因为这个也是群里反馈最多的问题,因为之前我使用的是vue,每次都需要进行编译,而且编译后就不能修改了,但是群里很多人都想修改主题,加点自己的功能,所以我也一直在找办法,所以这次我也花了非常多的时间去研究,最后终于把这个功能做出来了。

其实非常简单,就是不用vue了,直接使用PHP。。。(唉,相当于自己又重写了一套。。)总之就是非常不容易。

所以目前我使用的技术栈就是前端使用PHP后端使用GO,可能这里会有很多人好奇,为啥不直接用PHP,用go不是多此一举吗?主要是因为PHP有很多功能很难实现,比如定时任务,websocket等功能,而且PHP性能也不大行,再说我都花了这么多时间写了go的后端,重新写我可没这精力了。。。所以我还是坚持使用GO作为后端。。

好了,扯远了,目前我开发了两套主题(一个是原版的,另一个就是kratos了)

没错,之前我停止更新的wordpress主题又复活了哈哈!(有现成的直接拿来用不香嘛~)不过可惜看板娘没了,不过我后续会想办法实现这个插件的,大家别急~

给大家对比一下这两个主题的效果。

原版主题

Snipaste_2021-06-19_18-00-00.png

kratos主题

其实布局很像(因为我博客系统之前的那个主题就是参考这个来写的哈哈),这里我只展示主页和文章,其他的就不展示了~

目前主题功能同样也还没非常成熟,毕竟目前就只有我一个人开发,而且没没做多久时间,所以有bug是难免的,后面我会慢慢修复。。

部署方式升级

之前的部署采用的是脚本+docker的方式,还是有不少人遇到了bug,所以我也花了很多时间做了一个可视化部署功能(其实这东西好早之前就做了,但是但是没时间去完善,最近我花了一点时间把这个功能给做了)

大家只需要点一下按钮就可以部署了

然后有一个弹窗显示日志

最后

这次咕了快有三个月了,不是我懒,而是更新的东西太多了,其中主题和插件这两个功能花的时间最多,同时还搞了一个可视化部署功能。。这个过程实在太艰辛了,这几个月又要忙着面试又要忙着博客系统,几乎都没怎么休息过。后面更新可能会慢一点,写这个都快写烦了~ 加上最近实习每天下班都有点晚,几乎都没精力写了,还请大家见谅。。