开发

什么才是规矩的博客

从代码角度看,什么才是一个“好”博客?

2024年1月18日
什么才是规矩的博客
本文共有1683字,预计阅读时间8分钟
运营积薪大半年了,处理了数百个博客申请,因此也看了太多独立博客。并且由于我的角色让我不仅关注博客表面上的效果,还得看背后的实现。
我这才发现,原来有那么多人的博客是不规矩的。
不规矩这个说法好像容易引起歧义,那我就首先讲讲什么是我眼里的规矩的博客。
拿设计来举例,假设有两个设计稿。它们的导出结果完全一致,但设计稿源文件则大不相同:一个图层结构清晰,命名有逻辑;一个图层乱放无层次,命名全是自动的frame 149之类。虽然看起来都一样,但我更喜欢结构清晰的。
为什么我会看重代码层面的规矩呢?
因为积薪需要抓取博客的数据,并存储为结构化的数据。如果代码不规矩就容易出错。
而一般人们说起优秀博客的标准,往往是从内容、界面等方面评价,很少有代码层面的标准。今天我就以一个博客收录站开发者的角度,谈一下什么样的博客是在代码上“规矩”的。

服务器友好

博客最重要的就是RSS输出的正确。意思是格式正确,能被代码正确解析。一个最简单的办法就是用浏览器打开,如果能看到这句:
This XML file does not appear to have any style information associated with it. The document tree is shown below.
大概率格式就没问题。如果你看到的是被当成纯文本平铺的一大坨代码,那就不太正确。
RSS内容完整也是一个标准。标题、链接这些是最基础的,基本上没有哪个博客会缺这两个字段。重灾区是Description。
Description的作用是作为文章的概括,也就是说不适宜太长。现实中我遇到的大多数博客,在这个字段上很不上心,要么是截取,要么甚至就是全文。我的习惯是把文章副标题当作description输出。
封面图也是很多博客的RSS里不具备的,不过他们好像文章本身就没有封面图。但我有每篇文章都配封面的习惯,最起码浏览体验会好一点。
Open Graph信息齐备。如果你在社交平台分享一个链接,该平台很可能会将链接显示成图片+标题+描述的一个卡片。这里用到的技术就是Open Graph,将封面图、标题、描述以及其他信息写入页面的<head>,在分享的时候可以提供抓取信息。
https://darmau-image-1256887306.cos.accelerate.myqcloud.com/2024_01_18_14_15_47_535ba4ef63.png
Twitter会自动抓取设置在Open Graph里的标题和封面图
现实中我遇到设置了Open Graph甚至为每篇文章设置不同的图,我都会在心里赞叹一番。
提供sitemap。这条跟我没关系,跟SEO有点关系。提供了sitemap会让搜索引擎更快收录你的页面。谷歌对独立博客的权重还挺高的,SEO的确需要注意。
<head>信息完整。很多博客虽然提供了RSS,但是没有把链接放在网站的<head>里,就像这样:
https://darmau-image-1256887306.cos.accelerate.myqcloud.com/2024_01_18_14_21_38_0be1c36d6f.png
为什么把有些博客网址直接添加进RSS阅读器,就能自动找出RSS链接?就是这个方式。
在<head>里写好RSS、sitemap、open graph、谷歌搜索结构化信息、标准URL等信息有助于其他程序在自动化处理上更加方便。
不输出无关RSS条目。有些博客是自己开发的,在输出RSS的时候没有注意排除不想干内容,然后把About、友链之类的条目也输出了。建议RSS只输出正式的内容。
https配置正确。这个主要出现在自己部署服务器的博主。有时会遇到证书过期,或者配置不正确的情况。
以上是从服务器抓取的角度,下面是访客的角度。

访客友好

换域名做好重定向。虽然我不喜欢别人博客换域名,但考虑到今年我也要换一次域名,就不说了。换域名可以,一定要做好重定向,一定要有过渡期。
不加只有自己觉得炫的动效。这一点似乎主要发生在学生博主上。当然,特效也是作者的一种表达,我理解。但是从设计的角度讲,还是不要默认播放音频,不要有太多影响阅读本身的动效。
适配移动端。如果用的是现成成熟框架,用的是专业开发的主题,这一点应该不会有什么问题。对于自己开发的博客,还是应该多在移动端测测。
不会动不动发文章就删。我希望你发文就算没有深思熟虑,也是经过考虑的。发布后短期内就不要删了,也不要改slug。
网站响应迅速。显然,没人喜欢半天打不开的网站。

一些建议

以上标准的优化,对于不懂web开发的人来说的确有点难。一般来说,使用通用的博客程序和主题,大部分工作往往都处理好了。只有那些自己开发前端——比如本站——才需要手动处理。
对于那些技术小白,我还是建议不要去折腾服务器。现在无服务托管已经很成熟,CloudflareVercelRailwayzeabur有很多产品让你不需要关注服务器运维就能有自己的网站。
我作为一个伪全栈,平时最怕的就是运维。目前除了今年会重构的本站,其他所有项目都已迁移到无服务器部署模式上来。
如果你没有技术背景,最好还是不要折腾服务器了,半吊子运维水平是很多网站出bug的根源。

博客规矩≠好博客

虽然说了这么多标准,但我必须再次强调:博客规矩不等于是一个好博客。好博客的核心标准有且只有一个:内容好。
并不是每个人都想或能够创作严肃的有价值的内容,很多人只是想分享心情。那我只希望更多人的博客在代码上能更规矩,方便程序的处理。

评论