Repository navigation
Releases: xiaoziwenjie-code/dsh-plugin-wechat-publisher
Releases · xiaoziwenjie-code/dsh-plugin-wechat-publisher
Release list
v0.2.0 — 正文图片上传
正文图片上传。
微信会屏蔽外链图片,所以 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%居中,避免撑破手机屏宽
用法
文章里的图片直接写相对或绝对路径:

 ← 原样保留,不上传前置条件
- 公众号后台配置 IP 白名单(运行主机的公网出口 IP),否则
errcode=40164 - 环境变量
WECHAT_APP_ID/WECHAT_APP_SECRET - 订阅号需认证才有
draft/add权限
已知缺口
- Markdown 表格暂不渲染(表格内容会退化成段落)
full_publish未在真实账号验证首页可见性差异
v0.1.0 — 微信公众号发布插件首发
微信公众号发布插件首发。
把 Markdown 文章 + 封面图直推到公众号草稿箱,纯 Node 实现,零第三方依赖,只调微信官方 /cgi-bin 接口。
安装
dsh plugin --profile web add dsh-plugin-wechat-publishernpm 包当前处于 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 表格暂不渲染
{ "markdownPath": "/path/to/article.md", "coverPath": "/path/to/cover.png", "title": "文章标题", "mode": "draft_only", "spacing": 28 }