前情提要
這是社交媒體自動化管理系統的第二篇
在第一篇 社交平台經營必備神器 中,
我介紹了我為自己打造的 5 位虛擬私人助理。
而今天這一篇,我們將聚焦於其中的一位核心成員:「多平台發佈助理:一鍵同步」。
經營自媒體的崩潰日常,我也經歷過
「為什麼我每天都在做一樣的事?」
這句話,曾經是我每天深夜的內心獨白。
剛寫完一篇覺得很棒的文章,下一秒卻陷入了地獄般的重複勞動:
- 複製貼上:把文字貼到 Facebook,調整斷行。
- 檔案傳輸:圖片傳到手機,因為電腦版 Instagram 發文真的很難用。
- 重複勞動:打開 Threads 再貼一次。
- 錯失良機:甚至有時候忙起來,這篇精心撰寫的文章就這樣被遺忘在記事本裡,錯過了最好的發文時機。
- 排程的惡夢:每個平台的排程功能都不一樣。X (Twitter) 限制 280 字,Threads 限制 500 字,光是把同一篇文章拆解成不同格式,就讓人想摔鍵盤。
- 影片上傳地獄:短影片更慘。Instagram 傳一次,YouTube Shorts 再傳一次,TikTok 再來一次。每個平台都要重新填標題、選封面…
這種 低價值、高重複 的勞動,讓我覺得自己根本是電影《摩登時代》裡的卓別林,
每天重複轉動著螺絲,我覺得有一天我會瘋掉。
我意識到:做為一位創業者,不應該浪費時間在勞動力上。
於是,我決定發揮我的技術專長,打開 n8n,為自己打造一套 「全平台自動發文系統」。
現在,我只需要做一件事:在 Notion 寫好文章,勾選我要發的平台。
剩下的,全部交給系統。
我可以有更多時間經營我的事業,把時間專注在決策上而不是勞動力上。
今天這篇文章,就來 分享 我是如何架構這套系統的。
我的系統核心邏輯:如何讓一人經營生意外還能經營多個社交媒體平台?
這套系統不只是單純的「預約發文」,我把它設計成一套有判斷能力的 智慧調度中心。
我主要用了這三個工具來搭建:
- 大腦 (Notion):我的中央控制室。所有靈感、草稿、排程都在這裡完成。
- 神經系統 (n8n):負責傳遞訊號的自動化引擎。它每5 分鐘 會醒來一次,檢查有沒有任務要執行。
- 身體四支 (社群 API):FB, IG, YT 等平台的官方接口,負責執行最後的發布動作。

看看它是如何運作的
如果你是第一次看到這套系統,可能會覺得:「這真的能動嗎?」
讓我快速帶你走一遍我平常發文的流程:
- 在 Notion 寫作:我會在
Caption欄位寫好文字,把圖片丟進Media(如果是大影片就填URL)。 - 下達指令:在
Platform勾選 Facebook、Instagram、Threads,然後把Status改成Scheduled。 - 系統收單:每 5 分鐘,n8n 會自動醒來巡邏。當它發現「喔!有新貼文!」,它就會開始執行邏輯檢查。
- 瞬間同步:只要通過防洗版規則,幾秒鐘內,你會看到手機不斷跳出通知:你的 FB 粉專、IG 帳號、Threads 帳號等等不同的社交平台同時發出了那篇貼文。
- 自動回報:最後回到 Notion,你會看到
Status變成了Published,且官方的Post ID 也自動填好了。
為什麼我選擇自己做,而不是買現成的工具?
- 完全掌控:第三方平台的自動化發文工具,沒有完全符合我需要發文的平台。(例如 Discord, 電子報)
- 第三方平台不會回傳官方的貼文 ID。這個 ID 超重要,因為有了它,我才能做後續的自動化(例如:有人留言自動回覆、自動抓取洞察數據)。
- 智能防呆:我可以設定它「現在是半夜 3 點,先不要發文」,也讓它知道「上一篇才剛發,這篇先緩緩」,這些是市面軟體很難做到的客製化。
- 無限擴充:今天我想多加一個 WordPress 文章發佈?隨時可以自己接上去。
公開我的自動化方法
Part 1: 我的 Notion 中央指揮中心
首先,我需要一個 Notion Database 來存放我的靈感與貼文。
這不是普通的筆記,這是我經營自媒體的 內容生產線。
我在資料庫設計了以下幾個關鍵欄位,每一個都有它的用途:
| 欄位名稱 | ** 類型 (Type)** | 我為什麼這樣設計? |
|---|---|---|
| Name | Title | 貼文標題(給自己看的)。 |
| Caption | Text/Rich Text | 貼文的主要內容(真正發出去的文字)。 |
| Media | Files & Media | 圖片或影片上傳區。 |
| Status | Select | 我設定了 Scheduled(排程中)和 Published(已發布),用來觸發流程。 |
| Platform | Multi-select | 讓我勾選這篇要發到哪裡 (IG, FB, Threads, Youtube…)。 |
| Execute Time | Date | 指定這篇貼文的「預計」發佈時間。 |
| Publish Now | Checkbox | 我的緊急按鈕!勾選它,系統會無視所有防呆規則,在 5 分鐘內直接發射。 |
| Link | URL | 如果是發 FB 貼文,我會在這裡放上新聞連結或參考網址。 |
| Type | Select | 標記貼文類型:純文字、單圖、影片、還是輪播圖 (Carousel)。 |
| Release Date | Date | 這是系統自動填寫的,紀錄「上一篇」是什麼時候發的,用來計算冷卻時間。 |
| URL (1-20) | URL | 專門解決 Notion 檔案限制。因為免費版 Notion 上傳限制 5MB,如果超過限制,我會先上傳到雲端 (R2/Cloudinary),把連結貼在這裡。系統會優先抓這裡的檔案。 |
💡 Caption 貼文自動分頁規則 (重要!)
大家都知道,Threads 限制 500 字,X (Twitter) 限制 280 字,但 Facebook 幾乎沒限制。
如果我寫了一篇 800 字的長文,怎麼同時發到這三個平台?
系統支援兩個特殊的「指揮符號」,讓你告訴它在哪裡斷句:
===(一般分頁符號)- 用途:告訴系統「這裡太長了,幫我在 Threads 這裡切成第二篇留言」。
- 效果:
- Facebook:完全忽略這個符號,顯示為一篇完整的順暢長文。
- Threads:會在這裡自動斷開,後面的內容會變成該串文 (Thread) 的第二則留言。
- X (Twitter):同樣會在這裡斷開。
~~~(X 專用分頁符號)- 用途:因為 X 的字數更少 (280字),有時候在 Threads (500字) 能塞進一段的內容,在 X 卻這塞不下了。這時候可以用這個符號來「再切細一點」。
- 效果:
- Threads & FB:完全忽略這個符號(因為它們吃得下這段長度)。
- X (Twitter):會在這裡額外斷開,變成下一則推文。


Q: 如果讀者看到文章裡有一堆 === 很醜怎麼辦?
A: 別擔心,這些符號是給系統看的。
系統在發文前會自動把這些 === 和 ~~~ 刪除,讀者在 Facebook、Threads 或 X 上看到的依然是乾淨的文字,不會出現這些符號。
(註:如果你文章原本就真的需要打 = 或 ~ 符號,只要不連續打三個 (例如 == 或 ~~) 系統就不會誤判。)
💡 關於 Media 與 URL 欄位的操作邏輯:Notion 免費版的 Media 欄位單檔限制 5MB。
圖片/短片 (< 5MB):直接丟進 Media 欄位,最快。
大檔影片 (> 5MB):我會先上傳到 R2 或 Cloudinary,取得公開連結,然後依序填入 URL 1, URL 2…。
系統會優先讀取 URL 欄位,如果是空的,才會去抓 Media。
這樣設計讓我保有最大的彈性。
💡 小劇透 (Teaser):還有一些欄位我先賣個關子,之後的進階教學會用到:
Evergreen:自動把兩個月前的「長青貼文」撈出來重發。
Keyword:設定關鍵字,有人留言就自動觸發回覆。
Reply Text:自動回覆的內容。
Without Form:決定回覆後要不要請對方填表單。
Email Title/Content:填完表單後自動寄出的信件內容。(關於這些功能,我們在這個系列的後續文章再分享)
Part 2: 我的 n8n 自動化引擎
接下來,分享我是如何在 n8n 搭建這套系統的「主工作流」。
1. 設定執行時間
我需要讓系統「24 小時運作」。
所以我放了一個 Schedule Trigger節點,設定為每 5 分鐘 發動一次。
即使我在睡覺,它也在工作,每五分鐘都會巡邏一次:「老闆,現在有貼文要發嗎?」
2. 下達指令
接著,我讓 n8n 去讀取 Notion。
- 告訴它「只抓取 Status 標記為
Scheduled的文章」。 - 並且依照
Execute Time由舊到新 排序,抓最舊的那一篇。確保順序正確,先排隊的先發。
3. 幫我省下無數白頭髮的「防呆機制」
這是這套系統我最滿意的地方,也是最人性化的設計。
很多簡單的自動化,時間到就發,結果當天連發十篇洗版,反而掉粉。
為了避免這種狀況,我設計了一套複雜但好用的邏輯:
- 急件模式:只要我勾選Publish Now,系統就會無視所有規矩,「啪」一聲直接發出去。
- 日常巡邏:如果沒那麼急,系統就會乖乖遵守我的家規:
- 時間框架:只有在
allowedStartHour(例如中午 12 點) 到allowedEndHour(晚上 9 點) 之間才會發。 - 分散發佈:系統會看「上一篇貼文」的
Release Date,如果距離現在還不滿postingFrequency(例如 1 小時),它會叫下一篇先等等,不要急著洗版。 - 工作日限制:只在
allowedWeekdays設定的日子發文(例如週一到週五),週末讓自己和粉絲都休息一下。
- 時間框架:只有在

4. 派發任務
當貼文通過了層層驗證,系統確定「好,這篇可以發!」,接下來就要決定「發去哪裡?」。
我用了 Switch 節點,讀取我在 Notion 勾選的 Platform 標籤:
- 這篇有勾
Instagram? 👉 走 IG 的發布通道。 - 這篇有勾
Facebook? 👉 走 FB 的發布通道。 - 這篇有勾
Threads? 👉 走 Threads 的發布通道。
這就像是一個分發中心,確保內容準確送達。

5. 執行與回報 (Execute & Update)
發布成功後,系統會自動回到 Notion 幫我回報進度:
- 更新狀態:把
Status從Scheduled改成Published。 - 紀錄身份:更新各平台的Post ID,確保未來可以追蹤每一篇貼文。
- 記錄時間:填上Release Date。這非常重要,因為它是下一篇貼文判斷要不要「再等等」的依據。
這樣,我就擁有了一個完整的發文檔案庫,隨時可以回來檢查發過什麼。

想像一下,擁有這套系統後的生活
說實話,為了把這一整套邏輯跑通、測試、除錯,我花了大概 半年 的時間。
這不是什麼「一鍵生成」的魔法,而是一個紮紮實實的邏輯工程。
但這半年的投入,換來的是我現在可以更專注在「內容本身」。
我不再為了調整文章格式而煩躁,也不再因為繁瑣的操作而討厭發文。
在 Notion 處理完內容,勾選發布,然後就可以去喝杯咖啡了。
把工作變成了我喜歡的樣子。
這才是一人公司該有的樣子,不是嗎?
🎁 資源下載區
這套系統花了我不少心血,希望能幫助到你。
我整理了完整的 n8n JSON 模版,以及相關的 Excel 設定檔。
子工作流教學文章
- Facebook Post
- Instagram Post
- Threads Post
- YouTube Post
- X (Twitter) Post(官方改版中… 舊文章已不適用先下架)
- Linkedin Post
- Discord Post (待撰寫)
- Newsletter (待撰寫)
⚙️ 設定教學與注意事項
要讓這套「指揮中心」順利運作,除了匯入模版,你還需要做幾個關鍵設定:
- 部署 n8n 系統 (如果你還沒有的話):
- 這整套系統都需要跑在 n8n 上。如果你還沒安裝,我強烈推薦用 Zeabur 來部署,省去自己管伺服器的麻煩,而且還有免費額度。
- 👉 參考我的教學:三分鐘用 Zeabur 快速部署 n8n
- Notion Database 前置作業:
- 請點此複製我的範例資料庫。
- 重要:欄位名稱必須跟我的一模一樣,不然 n8n 會找不到對應的資料夾存放數據。
- Get Content / Last Post 節點 (回到 n8n):
- 如果你沒拿過 Notion API Key,可以參考這篇 申請教學。
- 設定好 API Key 後,記得在 n8n 的 Notion 節點中選中你在第 2 點複製的那個資料庫。
- Settings 節點:
- 打開主工作流中的
Setting節點,這是我用來控制系統靈魂的地方。 postingFrequency:以「分鐘」為單位。系統會根據這個間隔來排隊發文。例如設為 60,就是每小時發一篇。allowedStartHour/allowedEndHour:設定你允許發文的時段(例如 0830 到 2330 = 早上 8 點 30 分到晚上 11 點 30 分)。allowedWeekdays:填入 1,2,3,4,5,6,7(分別代表週一到週日),如果你想週末休息,拿掉 6 和 7 就可以了。
- 打開主工作流中的
- Schedule Check (Backend) 節點:
- 因為有些時間邏輯和 Token 驗證是在我的後端運行的,請去 會員後台 申請一個免費的 API Key。
- 把它填入 Header Auth 中。
- Name = X-API-Key
- Value = {你的 API Key}
- 喚醒子助理:
- 匯入 FB/IG/Threads 的子工作流後,回到主工作流。
- 點開
Call 'Facebook Post'等節點,確認它們有正確指向那些子工作流。
- 出錯了怎麼辦?:
- 我設計了一個報錯機制。如果發文失敗,它會寄 Email 給你。
- 你需要先搞定 Google API 權限,參考這篇教學。
- 最後在
Send Error Message節點填入你的收件電郵。
加入自動化社群
如果你對這套系統感興趣,或者在嘗試搭建的過程中遇到問題,
歡迎 加入我的 Discord 社群,有任何卡關的地方,都可以直接在群裡找我。
付費會員會有一個專屬的私人頻道,
你可以在那裡直接告訴我你在自動化過程中遇到的痛點。
如果這是一個大家都有的需求,我會親自開發解決方案,並把它整合進系統裡。
讓我們一起把它變得更強大。
我們下一篇文章見!


