v1.1.0
- 使用Slug Driver System重写插件
- 1.0版本采用的方式是直接修改数据库的slug字段,是不可逆的。1.1版本并不修改数据库的slug字段,可以随时切换到默认slug模式。
更多内容和使用方法参考官方文档 - https://github.com/PipecraftNet/flarum-ext-id-slug/blob/main/README-cn.md
关于1.1版本的由来
我刚接触Flarum没有几天,由于自己需要,参考URL 音译插件(URL Transliterator by FriendsOfFlarum)写了这个插件。在发布插件后没有几个小时,居然有人提交了第一个issue。提交这个issue的人是askvortsov,是Flarum核心开发者之一。有点受宠若惊。
askvortsov建议使用Slug Driver System实现这个功能,因为现在的实现方式(v1.0)会直接修改数据库,如果使用Slug Driver System,则可以避免修改数据库。由于刚接触Flarum,还不太熟悉,本来想以后再考虑这个问题,并且sitemap插件(fof/sitemap)直接使用slug字段,如果我的插件改成Slug Driver System方式,页面的URL和sitemap的URL将不一致。所以在issue里说因为sitemap插件,目前还是不改好。
可是没想到在我评论后没几个小时,这个家伙居然到sitemap插件(fof/sitemap)那边提交了一个新的issue,建议sitemap也使用Slug Driver System。然后自己在sitemap提了一个PR,完成了这个功能,然后很快就被merge,并发布了1.0.1版本。这个执行效率把我惊到了。
于是,我也马上分析了Slug Driver System的代码和原理,重写了这个插件,发布了1.1.0版本。
由于1.0版本和1.1版本实现方式不同,使用方法也点不同。
欢迎试用,给出建议。
最后,推荐一篇askvortsov最近发布的一个帖子。