AI PLAY玩法更新持续收录
← 回到更新流

2026-10-14 · 原文发布日

表格选题自动成稿并三平台发布

每个工作日早上从 Google Sheets 取一条状态为就绪的选题并锁定,用 Gemini 分别生成 LinkedIn、Facebook、Bluesky 三个平台文案和配图提示词,再生成配图,经 PostWire 统一发布;全部成功就把状态、时间和各平台链接写回表格,部分失败则标记待修并用 Gmail 发提醒说明哪步出错、哪些已发出。

原文要点

原模板每个工作日9:00运行,从Google Sheets读取status为ready的第一条选题,先改写为writing占位;用Gemini文本模型产出LinkedIn、Facebook、Bluesky文案和配图提示词,再用Gemini图像模型生成插图;经PostWire发布到三平台并收集结果。全部成功写回posted、时间戳和链接;任一失败写回needs fix或partly posted,并用Gmail说明已发链接与待修步骤。表格需含topic、notes、status、posted_at、links、note。

这次做成什么

在站内复刻一个可演练的“表格选题→AI成稿→三平台发布→回写/告警”闭环;由于不提供可导入工作流,本站用隔离Sheet、测试PostWire账号和合成选题设计练习,正式发布参数需回原模板核对。

准备什么

  • n8n可用环境,且只使用测试项目或测试文件夹
  • Google Sheets测试表,含topic、notes、status、posted_at、links、note列
  • Google Gemini文本与图像凭据,图像生成额度单独确认
  • PostWire测试账号及LinkedIn、Facebook、Bluesky测试资料页
  • Gmail OAuth2凭据和收件测试邮箱,不用真实客户地址

具体怎么做

  1. 建表并造一条就绪选题

    在测试Sheet建列topic、notes、status、posted_at、links、note;插入一行topic=「社区咖啡店冷萃新品」、notes=「突出低酸和本周买二赠一」、status=ready。另建dead_letters工作表存放失败快照,避免污染真实选题池。

  2. 配置触发器与认领锁定

    用Schedule Trigger设工作日9:00;Google Sheets读取条件status=ready且limit=1;紧随Update Row把该行status改为writing。字段映射:row_number保留行号,topic与notes原样传入,posted_at/links/note清空。若并发可能,先读再改并在失败时回滚ready。

  3. Gemini生成三平台文案与配图

    文本Gemini节点使用下方提示词,要求只返回JSON;解析后拆成linkedin_text、facebook_text、bluesky_text、image_prompt。图像Gemini节点以image_prompt生成一张方图,输出二进制image;把JSON与image合并进同一Item,键名固定避免下游找不到。

  4. 经PostWire发布并逐平台收集结果

    安装PostWire节点后新建凭据,选择已连接的三个测试资料页;正文映射linkedin_text等,媒体映射image。不要假设一次调用全成功,逐平台保存{platform,ok,url,error}到results数组;没有真实测试页时先改Dry Run或仅记录payload。

  5. 成功回写或失败告警

    IF判断results中ok是否全为true。真分支Update Row:status=posted、posted_at=当前ISO时间、links=拼接平台URL、note清空。假分支写status=partly posted或needs fix、note=失败平台与错误,Gmail发送主题「选题发布异常」和已发链接;练习里收件人只用测试邮箱。

可直接复制的材料

Gemini三平台成稿提示词

本站独立编写示例;模型名、温度、JSON模式开关需在Gemini节点与账号中核对。

你是中文社交媒体编辑,但根据选题可输出英文平台文案。输入topic与notes。只返回一个JSON对象,不要Markdown,不要解释。字段必须是:linkedin_text字符串120到180词、facebook_text字符串60到100词、bluesky_text字符串不超过260字符、image_prompt字符串用于生成方形插画、hashtags数组最多5个。要求:LinkedIn偏行业洞察,Facebook偏活动口吻,Bluesky短句且不用链接;image_prompt只描述画面,不含品牌logo、不含真实人物、不含文字。若notes含价格或日期,原样保留,不虚构折扣。

测试选题CSV

合成练习数据,仅导入测试Sheet;不要把真实客户活动、电话或地址放入。

topic,notes,status,posted_at,links,note
社区咖啡店冷萃新品,突出低酸和本周买二赠一,ready,,,
夜间自习室延长开放,强调安静座位与23点关门,ready,,,
旧书换咖啡活动,带两本旧书可换中杯美式,ready,,,

PostWire发布负载示意

不是原工作流文件;dryRun与字段名需按PostWire节点实际选项核对,测试通过后再关。

{"accounts":{"linkedin":"test_linkedin_profile","facebook":"test_facebook_page","bluesky":"test_bluesky_handle"},"texts":{"linkedin":"{{$json.linkedin_text}}","facebook":"{{$json.facebook_text}}","bluesky":"{{$json.bluesky_text}}"},"media":[{"field":"image","alt":"方形插画,不含文字"}],"dryRun":true,"idempotencyKey":"{{$json.row_number}}-{{$json.topic}}"}

输入与输出示例

本站虚构演示,非原作者结果,也未声明实际调用成功;链接为保留测试域。

输入

Sheet行:topic=社区咖啡店冷萃新品,notes=突出低酸和本周买二赠一,status=ready;练习环境dryRun=true。

对应输出

Gemini示意JSON:{"linkedin_text":"...低酸冷萃...","facebook_text":"本周买二赠一...","bluesky_text":"低酸冷萃上线,本周买二赠一。","image_prompt":"方形水彩插画,冰咖啡与咖啡豆,无文字","hashtags":["coldbrew","coffee"]};发布结果示意:linkedin ok=true url=https://example.test/li/1,facebook ok=true url=https://example.test/fb/1,bluesky ok=false error=测试页未授权;回写status=partly posted,note=bluesky:测试页未授权。

做完检查这些

  • 读取节点只返回status=ready的一行,并在下一步前改成writing
  • Gemini输出能解析成四个固定键,Bluesky文案不超过260字符
  • results数组包含三个平台且每项有ok、url或error
  • 全成功时posted_at为ISO时间且links含三个测试URL
  • 任一失败时Gmail只发测试邮箱并列出已发链接与失败平台

容易卡住的地方

  • 免费模板不等于Gemini图像、PostWire或平台API免费,需各自确认额度
  • 先读后写仍可能并发认领,生产环境要加锁或唯一约束
  • 图像提示词含logo或真人可能被平台拒绝,需改用抽象插画
  • Facebook与LinkedIn测试页权限过期会被误判成文案失败
  • 不要把真实客户邮箱写进Gmail节点,练习只用隔离收件箱

原文与作者资料 ↗

本站借助AI整理来源事实,独立编写中文操作指南与示例。示例不代表实际运行结果;来源效果尚未由本站独立复现。付费模板与模型、服务费用分别计算。

原文标题
Create LinkedIn, Facebook and Bluesky posts from Google Sheets with Gemini, Nano Banana and PostWire
原作者
PostWire
原始发布日期
2026-10-14T03:12:41.020Z
来源
https://n8n.io/workflows/20917