我用微信公众号自带的编辑器来写文章,经常需要手动调整样式。
比如:
- 换行后,段落之间的空间一下子变大了,这种情况通常发生在分割线出现之后;
- 有的过长的句子没有去主动换行的话,字间距会自动变大;
- 图片与文字之间的间距需要手动调整,否则会贴得太近
由于我主要做技术研发,习惯使用 MarkDown 的格式来编写文章,这样文章的段落清晰,样式也是明确无误的。实在是不想在这个编辑器调整样式上浪费时间~
所以我更希望能一键把所写的文章直接发布到微信公众号上,考虑到 AI 工具的集成,我倾向于有这么一个 CLI (命令行工具)能帮我完成这件事,这样 AI 也能很方便地学会这个 Skill。
行,是时候让 AI 数字牛马开始干活了!
1. 明确需求
- 项目名就叫它:md2mp 吧,md 是 MarkDown 文档的简称,mp 是微信公众号的简称;
- 使用
node js开发,是个 CLI (命令行工具),命令为:md2mp publish <MarkDown 文件>; - CLI 使用示例:
md2mp publish example.md; - 命令中的
<MarkDown 文件>支持相对路径和绝对路径; - 微信公众号要求输入
AppId与AppSecret才能获取AccessToken来发布文章草稿和上传图片,使用环境变量来配置它们,AppId的环境变量名为:MP_APP_ID,AppSecret为:MP_APP_SECRET; - 发布流程:解析 Front Matter、验证必须字段、上传图片、转换 MarkDown 为 HTML、发布文章;
- 转换 MarkDown 文档为 HTML时,样式必须内联;
- 文章中如有与封面相同路径的图片,确保去重,只上传一份;
- Front Matter 必须既支持 YAML 格式,又支持 TOML 格式;
- Front Matter 中必须指定 title(标题),cover(封面)作为可选项,如果未指定,则使用文章正文部分的第一张图片,如果没有找到,则使用 md2mp 自带的默认图片作为封面;
交给数字员工,啪啪抽打几下,产出:
2. 环境变量配置
发布到公众号需要配置两个环境变量:
MP_APP_IDMP_APP_SECRET
这两个需要到微信公众号的开发接口管理中获取:
⚠️ 记得把服务器 IP 加入公众号后台的 IP 白名单,否则接口会报错。
3. 测试
md2mp publish "20260204-MarkDown 转微信公众号 CLI.md"
直接把这篇公众号拿来做测试吧~
图片也都正确处理了:
4. 总结
AI 真的太方便了,要是放以前,我自己开发一个这个小工具,至少要一天时间,现在也就半个小时,生产力真的翻了好几十倍~
拥抱 AI,不必迷惘,这是时代的趋势,也是红利,是个人开发者的终极利器。