告別手動發文地獄!n8n x WordPress 終極聯動,打造你的 24H 全自動內容工廠
嗨,我是浪花科技的資深工程師 Eric。寫程式這麼多年,我最痛恨的就是「重複」又「沒技術含量」的工作,而「手動複製貼上發文」絕對是這類工作的榜首。想像一下,你好不容易從各種來源(可能是 Google Sheets、Airtable、甚至是某個內部系統的 API)整理好了一批內容,結果還要一篇一篇登入 WordPress 後台,複製、貼上、選分類、上標籤、設定精選圖片… 光想就覺得手指關節在抗議了。
身為一個有格調的工程師,我們怎麼能容忍這種低效率的工作流程?今天,我就要來跟大家分享一個解放生產力的神兵利器:n8n。它就像一個數位世界的強力膠水,可以把各種不同的服務和應用程式黏在一起,實現全自動化的工作流程。這篇文章,我會手把手帶你用 n8n 與 WordPress 自動發文,從此告別複製貼上的惡夢,把時間花在更有價值的事情上,例如… 多喝幾杯咖啡思考人生?
為什麼是 n8n?它跟 WordPress 簡直天作之合!
你可能會問:「Eric,市面上有 Zapier、Make 這些工具,為什麼你偏偏推薦 n8n?」問得好!身為一個愛折騰的工程師,我當然都玩過。Zapier 跟 Make 很棒,但它們是商業服務,當你的自動化流程一多、執行次數一頻繁,那帳單可是會讓你心頭一驚的。
n8n 最大的魅力在於:
- 開源且可自架 (Self-hosted):你可以把它部署在自己的伺服器上,幾乎零成本(除了伺服器費用)就能擁有無限的工作流程和執行次數。對於我們這種控制慾強、又想省錢的工程師來說,簡直是完美。
- 高度彈性與擴充性:n8n 的節點(Node)設計非常直觀,就算是不會寫程式的人也能透過拖拉點選建立流程。但它的上限又非常高,你可以直接在裡面寫 JavaScript 或 TypeScript 程式碼,處理複雜的邏輯、串接任何有 API 的服務。
- 視覺化流程:你看著數據在一個個節點之間流動,哪裡出錯一目了然。除錯起來比看著終端機噴 log 友善多了。
當 n8n 遇上本身就擁有強大 REST API 的 WordPress,就等於打通了任督二脈。你不僅僅是自動發文,舉凡是使用者註冊同步、WooCommerce 訂單處理、留言審核通知… 只要你想得到的,幾乎都能自動化。
動手前的準備:打造自動化高速公路的地基
俗話說「工欲善其事,必先利其器」。在我們一頭栽進 n8n 的世界前,有些準備工作得先做好。別嫌我囉嗦,地基打得穩,後面的路才好走,不然等一下流程跑不起來,你回頭找問題會找到想砸鍵盤。
WordPress 端:申請一張專用通行證
我們總不可能把 WordPress 管理員的帳號密碼直接寫在 n8n 裡吧?這太危險了!萬一 n8n 伺服器被黑,你的網站就門戶大開了。WordPress 很貼心地提供了一個更安全的方式:「應用程式密碼 (Application Passwords)」。
- 登入你的 WordPress 後台。
- 到「使用者」>「個人資料」。
- 往下拉找到「應用程式密碼」區塊。
- 在「新應用程式密碼名稱」欄位輸入一個你好記的名字,例如 `n8n_poster`。
- 點擊「新增應用程式密碼」。
- WordPress 會產生一組密碼,格式是 `xxxx xxxx xxxx xxxx xxxx xxxx`。請立刻複製並保存好這組密碼!因為這個畫面關掉後就再也看不到了。
這組密碼就是 n8n 專用的鑰匙,它只能用來操作 API,而且隨時可以在後台撤銷,比直接用你的登入密碼安全一百倍。這點真的很重要,網站安全是基本功,千萬別輕忽,不然就像網站大門忘了鎖一樣,後果不堪設想。
資料來源:你的內容彈藥庫
自動發文也得有內容來源。今天我們用最常見的 Google Sheets 當作範例。請先準備一個 Google Sheet,並建立以下欄位:
- `title` (文章標題)
- `content` (文章內容,可以是 HTML 格式)
- `status` (文章狀態,例如 `publish` 或 `draft`)
- `category` (文章分類名稱)
- `tags` (文章標籤,多個請用逗號分隔)
- `processed` (處理狀態,用來標記是否已發布)
實戰開工:一步步打造 n8n 自動發文工作流
好了,準備工作完成,讓我們打開 n8n,開始打造我們的自動化內容工廠!
步驟一:觸發器 – 從 Google Sheets 讀取新內容
每個 n8n workflow 都需要一個觸發器 (Trigger)。我們希望 n8n 定期去檢查 Google Sheets 有沒有新文章要發。
- 在 n8n 畫布上,點擊「+」新增一個節點,搜尋「Google Sheets」。
- 在「Authentication」中授權 n8n 存取你的 Google 帳號。
- **Resource**: 選擇 `Sheet`。
- **Operation**: 選擇 `Read`。
- **Sheet ID**: 填入你的 Google Sheet ID (就是網址列 `…/d/` 和 `/edit` 之間那段亂碼)。
- **Range**: 填入你的工作表名稱,例如 `Sheet1`。
- 設定一個篩選條件,只讀取 `processed` 欄位是空白的資料列。
- 最後,在 workflow 的 Settings 中,設定排程 (Schedule),例如每小時執行一次。
步驟二:核心步驟 – 連接 WordPress 並發布文章
現在我們拿到資料了,該把它送到 WordPress 了。
- 新增一個「WordPress」節點。
- 在「Credential for WordPress API」中,點擊「Create New」。
- **Base URL**: 填入你的網站網址,例如 `https://yourdomain.com`。
- **Username**: 填入你的 WordPress 使用者名稱。
- **Application Password**: 貼上我們剛剛產生的那組應用程式密碼。
- 儲存憑證。
- **Resource**: 選擇 `Post`。
- **Operation**: 選擇 `Create`。
- 現在,開始最有趣的「資料對應」!把上一個 Google Sheets 節點的資料,拖拉到對應的欄位:
- **Title**:
{{ $json.title }} - **Content**:
{{ $json.content }} - **Status**:
{{ $json.status }}
- **Title**:
做到這一步,你的基本自動發文流程已經完成了!點擊「Execute Workflow」測試一下,應該就能在 WordPress 後台看到新文章了。
步驟三:進階處理 – 分類與標籤的愛恨情仇
「等等,Eric!我的分類跟標籤怎麼沒上去?」沒錯,如果你直接把分類名稱丟給 WordPress API,它是不認得的。API 只認得 Category ID 和 Tag ID。這就是新手常踩的坑。
怎麼辦?我們得在發布前,先去問 WordPress:「嘿,請問『技術教學』這個分類的 ID 是多少?」
這裡有兩種做法:
- 簡單暴力法:先在後台手動查好常用分類/標籤的 ID,然後在 n8n 中用 `IF` 或 `Switch` 節點做判斷。如果分類少,這招還行。
- 工程師優雅法:動態查詢!
- 在 WordPress 節點前,新增一個「HTTP Request」節點。
- 設定 `GET` request 到 `https://yourdomain.com/wp-json/wp/v2/categories?search=技術教學`。
- 這樣 API 就會回傳包含 ID 的分類資訊。
- 再用一個 `Set` 節點把這個 ID 取出來,傳給後面的 WordPress 節點。
- 標籤也是同樣的道理,只是 API 端點換成 `/wp-json/wp/v2/tags`。
這才是真正強健的作法,不管你未來新增多少分類,流程都不用改。這就是自動化的精髓啊!
步驟四:畫下句點 – 更新 Google Sheet 狀態
文章發布成功後,我們得回去 Google Sheet 做個記號,免得下次又重複發布。這很重要,不然你的網站會充滿一模一樣的文章,對 SEO 是一場災難。
- 在 WordPress 節點後,再新增一個「Google Sheets」節點。
- 這次的 **Operation** 選擇 `Update`。
- Sheet ID** 和 **Range** 照舊。
- 在 **Key** 欄位,我們用 `title` 來當作搜尋的依據。
- 在要更新的欄位 `processed` 中,填入 `done` 或是當前的時間 `{{ new Date().toISOString() }}`。
這樣就形成一個完美的閉環 (Closed Loop) 工作流了。
更上一層樓:處理精選圖片與自訂欄位 (ACF)
只發布文字也太單調了。要處理精選圖片或 ACF 這類的自訂欄位,單純用 WordPress 節點就不夠力了,我們需要祭出大殺器:「HTTP Request」節點,直接跟 REST API 對話。
上傳並設定精選圖片
這需要兩步:
- 上傳圖片:新增一個 HTTP Request 節點,用 `POST` 方法把圖片檔案傳送到 `/wp-json/wp/v2/media`。記得要在 Header 設定 `Content-Disposition`。成功後,API 會回傳這張圖片的 Media ID。
- 建立文章:再用一個 HTTP Request 節點 `POST` 到 `/wp-json/wp/v2/posts`,這次在 JSON body 中,除了 title, content 之外,多帶一個 `featured_media` 欄位,值就是上一步拿到的 Media ID。
更新 ACF 自訂欄位
如果你有使用 ACF,更新欄位也很簡單。在建立文章的 `POST` request 的 JSON body 中,加入一個 `meta` 或 `acf` 的 key,裡面再包含你的欄位名稱和值。
例如,要更新一個叫做 `source_url` 的 ACF 欄位:
{
"title": "我的自動化文章",
"content": "這是內文...",
"status": "publish",
"acf": {
"source_url": "https://example.com/original-article"
}
}
看吧!一旦你理解了 WordPress REST API 的運作原理,搭配 n8n,幾乎沒有什麼是你不能自動化的。
結論:你的時間,值得浪費在更美好的事物上
今天我們從零到一,建立了一個從 Google Sheets 讀取資料並自動發布到 WordPress 的完整工作流程。我們不只完成了基本發布,還處理了分類、標籤、以及更新回寫狀態等進階操作。這套流程不僅能幫你省下大把時間,更能確保內容發布的一致性與準確性。
這只是 n8n 與 WordPress 自動發文 的冰山一角。你可以把資料來源換成 RSS Feed、Airtable、Notion,甚至是用 AI 自動生成內容再發布。自動化的世界充滿無限可能,而 n8n 就是你探索這個世界的最佳夥伴。
當然,如果你遇到的自動化需求更複雜,例如需要串接公司的 ERP 系統、處理複雜的 WooCommerce 訂單邏輯,或是打造企業級的自動化數據流,這可能就需要更深入的技術規劃了。別擔心,這正是我們浪花科技的專長!
相關閱讀
- 資料還在手動同步?n8n Webhook + API 終極整合術,讓你的 WordPress 數據流自動奔跑!
- 「別再複製貼上了!」WordPress API 串接實戰:串接 LINE / HubSpot / n8n,打造你的全自動工作流
- WordPress REST API 宇宙大爆炸:從零開始打造你的第一個自訂端點!
如果你的團隊正在尋求更高效、更智慧的網站運營方式,或是想將 WordPress 與各種內部系統無縫整合,歡迎點擊這裡,填寫表單與我們聊聊。讓我們用技術,為你打造真正能解決問題的自動化解決方案。
常見問題 (FAQ)
Q1: n8n 和 Zapier/Make 有什麼不同?為什麼要選 n8n?
最主要的差異在於 n8n 是開源的,可以免費自架在自己的伺服器上。這代表你可以擁有無限的工作流程(Workflows)和執行次數(Executions),長期下來成本遠低於 Zapier 或 Make 的訂閱費用。對於需要高頻率或大量自動化任務的企業,以及注重資料隱私、希望將數據保留在自己伺服器內的開發者來說,n8n 提供了無與倫比的彈性與控制權。
Q2: 除了發布文章,n8n 還能為我的 WordPress 網站做什麼?
n8n 的應用場景非常廣泛!除了內容發布,你還可以:
- 同步使用者資料:當有新用戶在其他平台(如 CRM、會員系統)註冊時,自動在 WordPress 建立對應的帳號。
- 自動化 WooCommerce:新訂單成立時,自動將訂單資料寫入會計系統、發送 Slack/LINE 通知給出貨團隊,甚至自動處理後續的物流 API 串接。
- 智慧留言管理:當有新留言時,先透過 AI 服務(如 OpenAI)判斷是否為垃圾留言,再決定是否批准或發送通知給管理員。
- 表單數據整合:當使用者提交聯絡表單(如 Contact Form 7)時,自動將資料新增到 Google Sheets、HubSpot CRM 或電子報服務中。
基本上,只要 WordPress 有對應的 API 操作,n8n 就能成為你的自動化中樞。
Q3: 自動發文會不會影響 SEO?有什麼需要注意的嗎?
工具本身是中立的,關鍵在於「如何使用」。自動發文若使用得當,可以提升發文頻率與一致性,對 SEO 是有幫助的。但你需要注意以下幾點:
- 內容品質:絕對不要為了量產而發布低品質、重複或 AI 生成的垃圾內容。Google 的演算法越來越聰明,劣質內容只會傷害你的網站權重。自動化應該是用來發布「已經準備好的優質內容」。
- 發布頻率:避免在短時間內大量發布文章,這看起來不自然。利用 n8n 的排程功能,設定一個合理且穩定的發布頻率,例如每天一篇或每週三篇。
- 避免重複內容:確保你的工作流程有回寫機制(如此文範例中更新 Google Sheet 狀態),避免將同一篇文章重複發布。
總結來說,把 n8n 當成提升效率的助手,而非內容生產的機器,就能有效利用自動化為你的 SEO 策略加分。






