Skip to content

Releases: xiaoziwenjie-code/dsh-plugin-wechat-publisher

v0.2.0 — 正文图片上传

Choose a tag to compare

@xiaoziwenjie-code xiaoziwenjie-code released this 23 Oct 18:38

正文图片上传。

微信会屏蔽外链图片,所以 Markdown 里引用的本地图片现在都会先走 media/uploadimg 上传,再用返回的 URL 替换进 <img>。

安装

npm i dsh-plugin-wechat-publisher
# 或从源码
dsh plugin --profile web add ./dsh-plugin-wechat-publisher

本版内容

  • 正文图片上传:本地图片按 Markdown 文件所在目录解析相对路径
  • 去重上传:同一张图多次出现只传一次(按单次运行缓存)
  • 外链直通:http(s) 开头的图片不重复上传
  • 失败可见:文件不存在或超 10MB 时渲染灰色提示文字,不会留下空白裂图
  • <img> 自动 max-width:100% 居中,避免撑破手机屏宽

用法

{
  "markdownPath": "/path/to/article.md",
  "coverPath":    "/path/to/cover.png",
  "title":        "文章标题",
  "mode":         "draft_only",
  "spacing":      28
}

文章里的图片直接写相对或绝对路径:

![示意图](./images/diagram.png)
![外链](https://example.com/pic.png)   ← 原样保留,不上传

前置条件

  • 公众号后台配置 IP 白名单(运行主机的公网出口 IP),否则 errcode=40164
  • 环境变量 WECHAT_APP_ID / WECHAT_APP_SECRET
  • 订阅号需认证才有 draft/add 权限

已知缺口

  • Markdown 表格暂不渲染(表格内容会退化成段落)
  • full_publish 未在真实账号验证首页可见性差异

v0.1.0 — 微信公众号发布插件首发

Choose a tag to compare

@xiaoziwenjie-code xiaoziwenjie-code released this 23 Oct 03:42

微信公众号发布插件首发。

把 Markdown 文章 + 封面图直推到公众号草稿箱,纯 Node 实现,零第三方依赖,只调微信官方 /cgi-bin 接口。

安装

dsh plugin --profile web add dsh-plugin-wechat-publisher

npm 包当前处于 staged review(新包自动审核),latest 暂时指向占位版本。审核通过后可 npm i dsh-plugin-wechat-publisher。现在直接从源码装:

git clone https://github.com/xiaoziwenjie-code/dsh-plugin-wechat-publisher.git
cd dsh-plugin-wechat-publisher && pnpm install && npm run build

用法

{
  "markdownPath": "/path/to/article.md",
  "coverPath":    "/path/to/cover.png",
  "title":        "文章标题",
  "mode":         "draft_only",
  "spacing":      28
}

本版内容

  • 段间距可调:spacing 参数(默认 28px,范围 12–64)。微信会剥掉 <style>,所以节奏只能写在块级元素的 style 属性上
  • 围栏代码块:输出 <pre><code> 并做 HTML 转义(上一版会退化成散落段落)
  • 分隔线、<strong>/<em> 处理顺序修正
  • MIT LICENSE、repository / keywords / engines / prepublishOnly 补齐
  • draft_only 仍为默认:freepublish 的首页可见性与手动发布不一致,需显式开启

前置条件

  • 公众号后台配置 IP 白名单(运行主机的公网出口 IP),否则 errcode=40164
  • 环境变量 WECHAT_APP_ID / WECHAT_APP_SECRET
  • 订阅号需认证才有 draft/add 权限

已知缺口

  • 正文图片上传未实现(media/uploadimg 已在代码中预留位置)
  • Markdown 表格暂不渲染