我本来以为这个月的更新不会很多,但是因为变强了,所以做的事情居然也不少。

撰写

我是特别在意作者写得爽不爽的。所以只要是对作者好的,我都搞得比较快。

An image to describe post

定时推送

这个功能是根据 Robin 的需求提前上马的。我本觉得这个需求应该没那么强烈,但是后来发现这是一种特别好的督促自己「交付成果」的办法....

An image to describe post

简单来说,作者可以在任何一篇文章设置一个推送时间(以作者所在的本地时间为准)。等到这个时间点到达时,这篇文章会先被发布,然后被推送。

当然了,只要文章还没有被推送出去,就可以随时在「推送历史」页面反悔,点击「取消推送」即可。

注意

如果设置定时推送以后,再修改文章内容的话,修改不会同步到推送的 Email 中。如果需要修改的话,请记得先取消推送。

预览文章

我作为作者啊,总是希望在文章发布之前,最好能以读者的视角读一遍这篇文章。但之前 Quail 的预览功能不太堪用,只能预览内容,不能模拟完整的读者环境——比如说分段长度是否理想、题图适合哪个主题色等等。

所以我认为需要给作者一个模拟读者的预览环境。现在只需要在文章编辑页面,选择右上角菜单的「预览文章」就可以预览了:

An image to describe post

对于手机也可行,用相机扫码就可以了。

生成文章相关的推文串

这是个比较好玩的 AI 功能。基本原理是把当前的文章喂给 AI,然后 AI 给生成一串短段落,方便发到类似 X(前生叫做 Twitter)这样的社交网络。

因为如果作者希望在 X 或者其他社交网络宣传自己的作品的话,使用推文串要比单独发一则推文要更吸睛,所以做了这么一个功能。

An image to describe post

Obsidian 插件支持内部链接

这是一个对于 Obsidian 用户的利好。

之前的时候,Quail 要求在 Obsidian 里插入图片时,需要使用完整的 Markdown 语法,并且输入完整的路径。例如:

![](/the/path/of/the/picture.png)

但是新版本的插件支持 Obsidian 样式的内部链接了,也就是说可以这样:

![[picture identity name]]

简单来说,直接在 Obsidian 里粘贴图片就行。

另外有一个好消息

Quail 的 Obsidian 插件终于进入 Obsidian 的 Community Plugin 名单了。现在只需要在 Obsidian 里搜索「Quail」安装即可。

查看 这篇教程 了解怎么使用插件。

统计与分析

作者们除了写文章以外,一定会在意自己的文章是否受欢迎,最好是用数字来体现。那么就有了这次一系列统计分析的改进。

记录 Email 打开情况

现在对于通过 Email 推送的文章,Quail 会尽可能记录它们被打开阅读的情况,并且显示在作者后台的文章列表上。例如:

An image to describe post

注意

由于很多 Email 客户端的隐私保护机制,这个统计会低于实际情况。

如果你是读者的话,如果收到 Quail 的邮件,也可以放心阅读,因为 Quail 只会记录匿名的数据。

可集成 Google Analytics 和 Umami 作为第三方统计

虽然我不喜欢 Google Analytics,但是考虑到它的受众太多了,所以还是支持了。

Umami 则是一个 Google Analytics 的替代品。如果你是个注重隐私的作者,可以考虑用 Umami 代替 Google Analytics。

具体的设置方法则是在「列表设置」中,找到「分析设置」填入需要的信息即可:

An image to describe post

具体可以参考这篇帮助文档

这是针对列表的配置

第三方统计当且仅当作者在自己的列表中启用以后,才会在自己的列表中生效。Quail 本身则不会使用任何第三方统计工具。

支付相关

新的收银台

之前 Quail 因为着急上线,没有一个专门的「付款确认」环节。这样使用起来有不安全感,也不利于之后做其他给支付相关的业务。

所以这次做了一个专门的收银台,选择「会员计划」升级的话,就能在后续的支付流程中看到:

An image to describe post

可以看到自己要购买的商品或者服务的具体内容,以及所有需要支付的费用、税费等等情况。

另外,未来支持新的支付方式的时候(比如信用卡什么的),就可以在这里选择响应的支付方式进行支付。

新的订单页

作者现在可以在 这里 查看自己的会员支付的订单了。

相应地,对于会员读者而言,也可以在 这里 看到自己支付的订单的情况。

具体就不放图片了,大家可以自己登录查看。

收入统计

能查看订单当然也能看收入统计。作者现在可以在 这里 以月为单位,看到自己的收入情况。

An image to describe post

未来支持法定货币以后,也会统计在这里。也会提供 Invoice 和 Credit Note 帮助大家处理税务。

阅读

支持嵌入 Youtube 和 Bilibili 视频

现在可以直接使用插入图片的语法来插入视频了。例如:

![](https://www.youtube.com/watch?v=XTzMqWaoqYw)

直接插入这个 Youtube 视频。诶,为什么这是阅读相关呢,因为这次支持视频的方式是在服务器渲染好 iframe,提高了一些阅读的体验。

可以设置是否在会员文章中,显示完整目录

这个需求是这样的:

有的时候,显示完整目录有利于读者在阅读会员文章时付费,因为显示目录出来的效果是这样:

An image to describe post

读者看了,如果被提起了兴趣,也许就愿意付费了。

但是有的时候,目录本身属于被收费的对象,那么就不适合显示出来了。这两个需求都非常明确地存在,而且互斥,所以我做了一个开关:

An image to describe post

这样,作者可以根据自己需要,选择是否显示目录。

其他

展示作者

现在,在任何一个列表的「关于」页签中,都出现了一个作者面板来显示这个列表的作者信息。点击作者的头像则可以看到这个作者的其他列表。

比如下图是 王一石 的展示:

An image to describe post

基本上是为了之后的社交和多作者支持做准备。

登录选择

由于作者和读者都可能登录到 Quail,所以登录逻辑不能只考虑其中之一。因此现在登录完成后,会询问接下来的意图:

An image to describe post

是要去写作,还是去探索下内容。

重构与问题修复

除此之外,这个月还进行了大量的重构和问题修复。也启动了一个新的项目来准备支持自定义域名。预计下个月能完成吧。

开源

这个月有了新的开源 Repo:quail-ui 。这是 Quail 目前正在使用的 Vue3 UI 库。由于被多个项目使用,我就抽离出来了。

其他部分的代码还在重构和整理中,预计在两个月内能陆续放出来。


好了,说了这么多,感觉我像个废话王。感谢能一起看着 Quail 的成长,同时也希望每位作者和读者都可以在这里找到属于自己的声音。

再次感谢,我们下个月见。