n8n 自動化教學:用 Notion + AI 打造社群自動發文系統

本篇教學將帶你使用 n8n 這款強大的自動化工具,結合 Notion 內容管理和 AI 改寫功能,打造一套完整的社群自動發文系統,自動發布到 Threads 和 Facebook 粉絲專頁。

n8n 自動化工作流程主視覺

在數位行銷的時代,社群經營已經成為品牌曝光的重要管道。然而,每天手動發文到 Facebook 粉絲專頁和 Threads 不僅耗時,還容易因為忙碌而遺漏。本篇教學將帶你使用 n8n 這款強大的自動化工具,結合 Notion 內容管理和 AI 改寫功能,打造一套完整的社群自動發文系統。

🎬 影片教學

如果你更喜歡透過影片學習,可以觀看以下教學影片:

💡 提示:影片中會有更詳細的操作示範,建議搭配文字教學一起學習效果更佳。

為什麼選擇 n8n?

n8n 是一款開源的工作流程自動化工具,相較於 Zapier 或 Make(原 Integromat),n8n 具有以下優勢:

比較項目 n8n Zapier Make
開源免費 ✅ 可自架 ❌ 付費為主 ❌ 付費為主
執行次數限制 無限制(自架) 有限制 有限制
自訂程式碼 ✅ 支援 JavaScript 有限 有限
資料隱私 ✅ 自架完全掌控 第三方託管 第三方託管
學習曲線 中等 簡單 中等

對於需要頻繁執行自動化任務的使用者來說,n8n 的自架方案能夠大幅降低成本,同時保有完整的資料控制權。

自動發文系統架構

在開始實作之前,讓我們先了解整個系統的運作流程:

自動發文工作流程圖

整個自動化流程分為五個主要階段:

第一階段:排程觸發。系統會在你設定的時間自動啟動工作流程,例如每天早上 9 點和下午 3 點各執行一次。這樣可以確保你的社群帳號在最佳時段發布內容,提高觸及率。

第二階段:Notion 資料讀取。工作流程會連接到你的 Notion 資料庫,讀取標記為「待發布」狀態的文章。Notion 作為內容管理中心,讓你可以提前規劃一週甚至一個月的發文內容。

第三階段:AI 內容改寫。由於不同社群平台有不同的特性(Threads 適合短文、Facebook 可以較長),系統會透過 AI 自動將原始內容改寫成適合各平台的版本,同時加入適當的 Emoji 和 Hashtag。

第四階段:社群發布。改寫後的內容會透過 Meta API 自動發布到 Threads 和 Facebook 粉絲專頁。整個過程完全自動,無需人工介入。

第五階段:結果回傳。發布完成後,系統會將結果(成功或失敗)回傳到 Notion,更新文章狀態並記錄發布時間,方便你追蹤和管理。

事前準備

在開始建立自動化流程之前,你需要準備以下項目:

1. n8n 環境

你可以選擇使用 n8n Cloud(官方雲端服務)或自行架設。對於初學者,建議先使用 n8n Cloud 的免費方案進行測試。如果你有技術背景,也可以使用 Docker 在自己的伺服器上架設 n8n。

# 使用 Docker 快速啟動 n8n
docker run -it --rm \
  --name n8n \
  -p 5678:5678 \
  -v ~/.n8n:/home/node/.n8n \
  n8nio/n8n

2. Notion 資料庫設定

在 Notion 中建立一個專門用於社群內容管理的資料庫,包含以下欄位:

Notion 資料庫設定示意圖

欄位名稱 類型 說明
Title 標題 文章標題(用於內部識別)
Content 文字 原始文章內容
Status 選擇 狀態:草稿、待發布、已發布、失敗
Platform 多選 目標平台:Threads、Facebook
ScheduledDate 日期 預定發布日期
PublishedAt 日期 實際發布時間
PostId 文字 發布後的貼文 ID
ErrorMessage 文字 錯誤訊息(如果發布失敗)

建立完成後,你需要在 Notion 的「設定」→「整合」中建立一個新的整合(Integration),並將其連接到你的資料庫。記得保存 Integration TokenDatabase ID,稍後在 n8n 中會用到。

3. Meta 開發者帳號設定

要自動發文到 Facebook 和 Threads,你需要設定 Meta 開發者帳號:

首先,前往 Meta for Developers 建立一個應用程式。在應用程式設定中,新增「Facebook 登入」和「Instagram Graph API」產品。接著,你需要取得以下權限:

  • pages_manage_posts:管理粉絲專頁貼文
  • pages_read_engagement:讀取粉絲專頁互動
  • instagram_basic:基本 Instagram 存取
  • instagram_content_publish:發布 Instagram/Threads 內容

完成權限設定後,透過「存取權杖工具」產生長期存取權杖(Long-Lived Access Token),這個權杖的有效期為 60 天,你可以設定另一個自動化流程來定期更新它。

4. OpenAI API 金鑰

AI 改寫功能需要使用 OpenAI 的 API。前往 OpenAI Platform 註冊帳號並取得 API 金鑰。GPT-3.5-turbo 模型的成本相當低廉,每次改寫大約只需要 0.001 美元。

建立 n8n 工作流程

現在讓我們開始在 n8n 中建立自動化工作流程。以下是完整的步驟說明:

步驟一:建立排程觸發器

在 n8n 中建立新的工作流程,首先新增一個 Schedule Trigger 節點。這個節點會在指定的時間自動觸發工作流程。

{
  "rule": {
    "interval": [
      {
        "field": "cronExpression",
        "expression": "0 9,15 * * *"
      }
    ]
  }
}

上述設定會讓工作流程在每天的早上 9 點和下午 3 點各執行一次。你可以根據自己的需求調整發文時間。

步驟二:連接 Notion 資料庫

新增一個 Notion 節點,設定為「Get Database Items」操作。在節點設定中,填入你的 Notion Integration Token 和 Database ID。

設定篩選條件,只讀取狀態為「待發布」且預定發布日期為今天的文章:

{
  "filter": {
    "and": [
      {
        "property": "Status",
        "select": {
          "equals": "待發布"
        }
      },
      {
        "property": "ScheduledDate",
        "date": {
          "equals": "{{$today}}"
        }
      }
    ]
  }
}

步驟三:AI 內容改寫

新增一個 HTTP Request 節點來呼叫 OpenAI API。這個步驟會將原始內容改寫成適合社群平台的版本。

// 請求設定
{
  "method": "POST",
  "url": "https://api.openai.com/v1/chat/completions",
  "headers": {
    "Authorization": "Bearer {{$credentials.openai.apiKey}}",
    "Content-Type": "application/json"
  },
  "body": {
    "model": "gpt-3.5-turbo",
    "messages": [
      {
        "role": "system",
        "content": "你是一位專業的社群小編,擅長將內容改寫成吸引人的社群貼文。請根據目標平台的特性進行改寫:Threads 適合簡短有力的內容(200字以內),Facebook 可以較為詳細(500字以內)。請適當加入 Emoji 和相關 Hashtag。"
      },
      {
        "role": "user",
        "content": "請將以下內容改寫成適合 {{$json.platform}} 的貼文:\n\n{{$json.content}}"
      }
    ],
    "temperature": 0.7
  }
}

AI 會根據不同平台的特性,自動調整內容長度和風格。例如,Threads 的改寫版本會更加簡潔有力,而 Facebook 版本則可以包含更多細節和說明。

步驟四:發布到 Threads

新增另一個 HTTP Request 節點來發布到 Threads。Threads 使用 Instagram Graph API,發布流程分為兩個步驟:先建立媒體容器,再發布內容。

// 步驟 1:建立媒體容器
{
  "method": "POST",
  "url": "https://graph.facebook.com/v18.0/{{$credentials.meta.instagramAccountId}}/threads",
  "body": {
    "media_type": "TEXT",
    "text": "{{$json.threadsContent}}",
    "access_token": "{{$credentials.meta.accessToken}}"
  }
}

// 步驟 2:發布內容
{
  "method": "POST",
  "url": "https://graph.facebook.com/v18.0/{{$credentials.meta.instagramAccountId}}/threads_publish",
  "body": {
    "creation_id": "{{$json.id}}",
    "access_token": "{{$credentials.meta.accessToken}}"
  }
}

步驟五:發布到 Facebook 粉絲專頁

新增 HTTP Request 節點來發布到 Facebook 粉絲專頁:

{
  "method": "POST",
  "url": "https://graph.facebook.com/v18.0/{{$credentials.meta.pageId}}/feed",
  "body": {
    "message": "{{$json.facebookContent}}",
    "access_token": "{{$credentials.meta.pageAccessToken}}"
  }
}

步驟六:更新 Notion 狀態

最後,新增一個 Notion 節點來更新文章狀態。根據發布結果,將狀態更新為「已發布」或「失敗」,並記錄相關資訊。

{
  "pageId": "{{$json.notionPageId}}",
  "properties": {
    "Status": {
      "select": {
        "name": "已發布"
      }
    },
    "PublishedAt": {
      "date": {
        "start": "{{$now.toISO()}}"
      }
    },
    "PostId": {
      "rich_text": [
        {
          "text": {
            "content": "{{$json.postId}}"
          }
        }
      ]
    }
  }
}

步驟七:錯誤處理

為了確保系統穩定運作,我們需要加入錯誤處理機制。在每個可能失敗的節點後面,新增一個 Error Trigger 節點,當發生錯誤時,將錯誤訊息記錄到 Notion 並發送通知。

// 錯誤處理邏輯
{
  "onError": "continueErrorOutput",
  "errorOutput": {
    "status": "失敗",
    "errorMessage": "{{$json.error.message}}"
  }
}

完整工作流程 JSON

以下是完整的 n8n 工作流程 JSON,你可以直接匯入到 n8n 中使用:

{
  "name": "社群自動發文系統",
  "nodes": [
    {
      "name": "排程觸發",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [250, 300],
      "parameters": {
        "rule": {
          "interval": [{"field": "cronExpression", "expression": "0 9,15 * * *"}]
        }
      }
    },
    {
      "name": "讀取 Notion",
      "type": "n8n-nodes-base.notion",
      "position": [450, 300],
      "parameters": {
        "operation": "getAll",
        "databaseId": "YOUR_DATABASE_ID"
      }
    }
  ]
}

完整的工作流程 JSON 檔案可以在本站的 n8n 資源頁面 免費下載。

實際運作效果

自動發文成功示意圖

當一切設定完成後,你的社群自動發文系統就會開始運作。每天在設定的時間,系統會自動:

  1. 從 Notion 讀取當天要發布的內容
  2. 透過 AI 改寫成適合各平台的版本
  3. 自動發布到 Threads 和 Facebook
  4. 將發布結果回傳到 Notion

你只需要專注於內容創作,將文章寫好並放入 Notion,剩下的發布工作就交給自動化系統處理。這不僅節省了大量時間,也確保了發文的穩定性和一致性。

進階優化建議

在基本功能運作穩定後,你可以考慮以下進階優化:

圖片自動處理:如果你的貼文需要配圖,可以在 Notion 中加入圖片欄位,並在工作流程中加入圖片上傳和處理的邏輯。Meta API 支援同時發布文字和圖片。

多帳號管理:如果你經營多個社群帳號,可以在 Notion 中加入「帳號」欄位,讓系統根據不同帳號發布到對應的平台。

數據分析整合:可以加入另一個工作流程,定期從 Meta API 讀取貼文的互動數據(按讚、留言、分享),並回傳到 Notion 進行分析。

失敗重試機制:對於發布失敗的貼文,可以設定自動重試機制,例如每隔 30 分鐘重試一次,最多重試 3 次。

常見問題與解決方案

Q: Meta API 存取權杖過期怎麼辦?

A: 長期存取權杖的有效期為 60 天。你可以建立另一個 n8n 工作流程,在權杖到期前自動更新。或者使用 System User Token,這種權杖不會過期。

Q: 發文時間不準確怎麼辦?

A: 確認你的 n8n 伺服器時區設定正確。如果使用 Docker,可以透過環境變數 TZ=Asia/Taipei 設定時區。

Q: AI 改寫的內容不符合預期怎麼辦?

A: 調整 System Prompt 的內容,給予 AI 更明確的指示。你也可以在 Notion 中加入「改寫風格」欄位,讓 AI 根據不同文章使用不同的改寫風格。

結語

透過 n8n 建立社群自動發文系統,你可以大幅提升社群經營的效率。這套系統不僅適用於個人品牌,也適合中小企業的行銷團隊使用。最重要的是,n8n 的開源特性讓你可以完全掌控自己的資料,不用擔心第三方服務的隱私問題。

如果你對這個自動化流程有任何問題,或是想要分享你的使用心得,歡迎在下方留言討論。我們也提供完整的 n8n 工作流程模板,讓你可以快速開始使用。


作者:奧特線上工具團隊
發布日期:2026 年 1 月 2 日
標籤:n8n, 自動化, 社群行銷, Notion, AI

參考資源