想要讓 WordPress 內容更新更有效率嗎?本文將帶你探索如何利用 `n8n` 建立自動化的內容發布流程,這對於需要定期更新內容的部落格經營者和行銷人員來說至關重要。透過設定 `n8n` 工作流程,你可以自動從 Google Sheets 等外部來源抓取內容,並根據預先設定的排程,將內容自動發布到你的 WordPress 網站,讓網站內容隨時保持在最新狀態。
這個流程不僅能節省大量手動更新的時間,還能確保內容發布的一致性。就像選擇網站字體一樣,內容的一致呈現對於品牌形象至關重要,你可以參考這篇關於 Google Fonts與WordPress網站字體選擇 的文章,瞭解如何透過細節提升網站的專業度。建議在設計自動化流程時,花一些時間建立結構化的 Google Sheets 內容模板,確保數據的準確性和一致性,這樣 `n8n` 才能順利抓取並發布。
這篇文章的實用建議如下(更多細節請繼續往下閱讀)
- Docker快速部署n8n: 立即使用Docker Compose快速建立n8n環境,確保環境一致性與資料持久性。務必設定Volume避免資料遺失。這能讓你省下配置環境的時間,直接進入自動化流程的設計。指令碼範例:`docker-compose up -d`。
- 結構化Google Sheets內容模板: 在開始自動化之前,花時間建立結構化的Google Sheets內容模板。確保數據準確性和一致性,讓 n8n 能夠順利抓取並發布。一致的內容格式對於建立品牌形象至關重要。
- 定期檢視與優化n8n工作流程: 自動化流程需要持續優化。定期檢查n8n工作流程的運行狀況,並根據實際需求進行調整和改進,例如錯誤處理和排程調整,確保內容發布的效率和穩定性。
設定 n8n 環境:n8n + WordPress 流程起手式
在開始使用 n8n 打造 WordPress 內容自動發布流程之前,首要之務是設定好 n8n 的運行環境。 n8n 提供了多種安裝方式,您可以根據自身的需求和技術背景選擇最適合的方式。無論您是偏好雲端服務的便利性,還是喜歡本地部署的掌控感,都能找到對應的解決方案。接下來,我將引導您完成 n8n 環境的設定,確保您能順利地開始自動化之旅。
選擇您的 n8n 安裝方式
n8n 提供了多種安裝方式,讓您可以根據自己的需求和偏好來選擇。
使用 Docker 安裝 n8n (推薦)
考量到環境一致性和部署的便利性,我強烈建議使用 Docker 來安裝 n8n。 Docker 是一個容器化平台,可以將應用程式及其依賴項打包成一個獨立的容器,確保在任何環境下都能以相同的方式運行.
- 安裝 Docker:如果您的電腦上還沒有安裝 Docker,請先到 Docker 官網 下載並安裝 Docker Desktop。
- 建立 Docker Compose 檔案:在您的專案目錄下,建立一個名為
docker-compose.yml
的檔案,並填入以下內容:version: '3.7' services: n8n: image: n8nio/n8n restart: always ports: - "5678:5678" volumes: - ~/.n8n:/home/node/.n8n
image: n8nio/n8n
:指定要使用的 n8n Docker 鏡像。restart: always
:確保 n8n 容器在意外停止時自動重新啟動。ports: "5678:5678"
:將主機的 5678 端口映射到容器的 5678 端口,用於訪問 n8n 介面。volumes: ~/.n8n:/home/node/.n8n
:將主機上的~/.n8n
目錄掛載到容器的/home/node/.n8n
目錄,用於持久化儲存 n8n 的設定和工作流程。重要:請務必設定 Volume,否則資料會遺失!
- 啟動 n8n 容器:在終端機中,切換到包含
docker-compose.yml
檔案的目錄,執行以下指令:docker-compose up -d
這會以 detached 模式 (
-d
) 啟動 n8n 容器。 - 訪問 n8n 介面:在瀏覽器中輸入
http://localhost:5678
,即可訪問 n8n 的 Web 介面。
設定 n8n 使用者
第一次啟動 n8n 時,會要求您建立一個使用者帳號。請按照指示填寫您的 Email 和密碼,建立管理員帳號。
常見問題與疑難排解
- 無法訪問 n8n 介面:
請確認 Docker 容器是否已成功啟動。您可以使用
docker ps
指令來查看正在運行的容器。另外,請檢查防火牆設定,確保 5678 端口沒有被封鎖。
- n8n 無法連接 WordPress API:
請確認 WordPress REST API 是否已啟用。您可以在 WordPress 後台的「設定」->「固定連結」中,選擇一個非「預設」的固定連結格式,以啟用 REST API。
同時,請確認您已正確安裝並啟用必要的 WordPress 插件,例如 WP Webhooks。
- 資料遺失:
請務必確認您已正確設定 Docker Volume,將 n8n 的資料持久化儲存。如果沒有設定 Volume,當容器停止或刪除時,所有資料都會遺失。
n8n 的硬體需求
n8n 本身對硬體資源的需求不高,但實際需求取決於您的工作流程複雜度和資料量。
- CPU:即使是小型伺服器也足以應付大多數使用情境。
- 記憶體:一般而言,n8n 在閒置時約佔用 100MB 記憶體。但若您的工作流程涉及大量資料處理(例如處理大型二進制檔案),則可能需要更多記憶體。
- 儲存空間:建議使用 SSD 儲存,以提升效能。
完成以上步驟後,您的 n8n 環境就設定完成啦! 接下來,我們將進入下一個階段:建立 Google Sheets 內容模板。
建立 Google Sheets 內容模板:爲 n8n + WordPress 流程準備數據
在開始使用 n8n 自動發布內容到 WordPress 之前,你需要先建立一個結構化的 Google Sheets 內容模板。這個模板將作爲數據源,n8n 會從這裡讀取內容,並按照你設定的格式發布到 WordPress。一個清晰、易於管理的 Google Sheets 模板,能讓整個自動化流程更加順暢。
Google Sheets 模板設計要點
設計 Google Sheets 模板時,請考慮以下幾個關鍵點,以確保 n8n 能夠正確地抓取和轉換數據:
- 欄位設計: 仔細規劃你的欄位,確保每個欄位都代表 WordPress 文章的一個重要屬性。例如:
- 標題 (Title): WordPress 文章的標題。
- 內容 (Content): WordPress 文章的主要內容。
- (Excerpt): WordPress 文章的簡短,用於描述文章內容。
- 分類 (Category): WordPress 文章所屬的分類。
- 標籤 (Tags): 用於描述 WordPress 文章的標籤,多個標籤之間可以用逗號分隔。
- 發布日期 (Publish Date): WordPress 文章的預定發布日期和時間。
- 作者 (Author): WordPress 文章的作者。
- 狀態 (Status): 文章的發布狀態,例如 “publish” (發布) 或 “draft” (草稿)。
- 特色圖片網址 (Featured Image URL): WordPress 文章的特色圖片的 URL。
- SEO 標題 (SEO Title): 用於 SEO 優化的文章標題。
- SEO 描述 (SEO Description): 用於 SEO 優化的文章描述。
- 數據類型: 確保每個欄位的數據類型與 WordPress 所需的格式相符。例如,日期欄位應使用正確的日期格式,布林值欄位應使用 “true” 或 “false”。
- 一致性: 保持數據的一致性,避免在同一個欄位中使用不同的格式或單位。例如,如果你的內容包含 Markdown 語法,請確保所有文章都使用相同的 Markdown 格式。
- 唯一識別碼: 爲每一篇文章分配一個唯一的識別碼 (ID),方便 n8n 追蹤和更新文章。
- 範例數據: 在模板中添加一些範例數據,方便測試和驗證 n8n 工作流程。
建立 Google Sheets 模板的步驟
下面是建立 Google Sheets 內容模板的具體步驟:
- 創建新的 Google Sheets 文件: 打開 Google Sheets,創建一個新的空白文件。
- 添加欄位標題: 在第一行輸入欄位標題,例如 “Title”、”Content”、”Category” 等。確保欄位標題清晰易懂。
- 設定數據類型: 根據每個欄位的數據類型,設定 Google Sheets 的格式。例如,對於日期欄位,選擇 “日期” 格式。
- 輸入範例數據: 輸入一些範例數據,用於測試 n8n 工作流程。
- 分享 Google Sheets 文件: 點擊 “分享” 按鈕,將 Google Sheets 文件分享給 n8n 服務帳戶。確保 n8n 服務帳戶具有 “編輯” 權限。 務必確認你的服務帳戶擁有足夠的權限才能讀取和寫入 Google Sheets。
Google Sheets 模板範例
ID | Title | Content | Category | Tags | Publish Date | Status |
---|---|---|---|---|---|---|
1 | n8n + WordPress 自動化發佈教程 | 這是一篇關於如何使用 n8n 自動發布內容到 WordPress 的教程。 | n8n, WordPress | 自動化, 內容發布 | 2025-05-05 10:00:00 | publish |
2 | 使用 Google Sheets 管理 WordPress 內容 | 本文介紹如何使用 Google Sheets 管理 WordPress 內容,並通過 n8n 自動發布。 | Google Sheets, WordPress | 內容管理, 自動化 | 2025-05-06 14:00:00 | draft |
請根據你的實際需求,調整 Google Sheets 模板的欄位和數據。
小提示
- 使用下拉選單: 爲 “Category” 和 “Status” 欄位設定下拉選單,方便選擇和保持數據一致性。
- 使用公式: 可以使用 Google Sheets 的公式來自動生成數據。例如,可以使用公式來自動生成文章。
- 版本控制: 定期備份 Google Sheets 文件,防止數據丟失。
建立好 Google Sheets 內容模板後,就可以開始配置 n8n,連接 Google Sheets 並抓取數據。在後續的章節中,我們將詳細介紹如何使用 n8n 從 Google Sheets 自動抓取內容,並發布到 WordPress。
n8n + WordPress:建立自動化的內容發布流程. Photos provided by unsplash
設定 n8n 連接 WordPress:n8n + WordPress 流程 API 串接
現在,讓我們一起來設定 n8n 與 WordPress 的連接,讓 n8n 可以透過 WordPress REST API 自動發布內容。這一步驟是整個自動化流程的核心,確保 n8n 能夠安全且有效地與 WordPress 進行通訊。
取得 WordPress API 憑證
WordPress 預設使用 Cookie 驗證,但為了讓 n8n 能夠在沒有使用者登入的情況下自動發布內容,我們需要設定應用程式密碼:
- 登入您的 WordPress 後台。
- 前往「使用者」>「您的個人資料」。
- 滑到頁面底部,找到「應用程式密碼」區塊。
- 輸入一個容易辨識的名稱(例如:n8n 自動發布)。
- 點擊「新增應用程式密碼」按鈕。
- WordPress 將會產生一組應用程式密碼,請務必複製並妥善保存,因為您之後將無法再次查看。
重要提示: 應用程式密碼不是您登入 WordPress 後台的密碼。它是專門為應用程式(例如 n8n)存取 WordPress API 而設計的。
在 n8n 中設定 WordPress 憑證
接下來,您需要在 n8n 中設定 WordPress 憑證,讓 n8n 知道如何連接到您的 WordPress 網站:
- 在 n8n 中,打開您的工作流程。
- 新增一個 WordPress 節點 (node)。
- 在 WordPress 節點的設定面板中,點擊「Credential」旁的齒輪圖示,選擇「Create new」。
- 在彈出的視窗中,輸入以下資訊:
- Name: 為您的憑證設定一個名稱(例如:My WordPress Credentials)。
- Mode: 選擇「Username & Password」。
- Username: 輸入您的 WordPress 使用者名稱。
- Password: 輸入您剛剛建立的應用程式密碼。
- WordPress URL: 輸入您的 WordPress 網站網址(例如:`https://your-wordpress-site.com`)。
- 點擊「Create」按鈕。
測試連線
設定完成後,您可以測試 n8n 是否能夠成功連接到您的 WordPress 網站:
- 在 WordPress 節點的設定面板中,選擇一個操作(例如:「Get All Posts」)。
- 點擊「Execute Node」按鈕。
- 如果一切設定正確,n8n 將會從您的 WordPress 網站抓取文章列表。
- 如果出現錯誤訊息,請仔細檢查您的憑證設定,並確保 WordPress REST API 已啟用。
疑難排解
如果在連接過程中遇到問題,請參考以下常見問題與解決方案:
- 「Unauthorized」錯誤:
- 請確認您使用的是應用程式密碼,而不是 WordPress 後台登入密碼。
- 請檢查您的 WordPress 使用者名稱和應用程式密碼是否輸入正確.
- 請確保您的 WordPress 網站已啟用 REST API.
- 連線逾時:
- 請檢查您的 WordPress 網站是否可以從 n8n 伺服器存取。
- 請檢查您的防火牆設定,確保 n8n 伺服器可以連接到您的 WordPress 網站。
透過以上步驟,您應該就能夠成功設定 n8n 與 WordPress 的連接,為接下來的自動化內容發布流程打下堅實的基礎。
步驟 | 說明 | 重點 |
---|---|---|
取得 WordPress API 憑證 |
|
應用程式密碼是專門為應用程式存取 WordPress API 而設計的,不是您登入 WordPress 後台的密碼。 |
在 n8n 中設定 WordPress 憑證 |
|
|
測試連線 |
|
如果出現錯誤訊息,請仔細檢查憑證設定,並確保 WordPress REST API 已啟用。 |
疑難排解 |
|
仔細檢查錯誤訊息,針對問題點進行排查。 |
設定 n8n 工作流程:Google Sheets 資料抓取與轉換
在前面的章節中,我們已經完成了 n8n 的環境設定、Google Sheets 的內容模板設計,以及 n8n 與 WordPress API 的連接設定。現在,我們要進入到核心的部分:如何設定 n8n 的工作流程,從 Google Sheets 中抓取資料,並將其轉換為 WordPress 可以接受的格式,最終自動發布到你的網站上。
新增 Google Sheets 節點:連接你的內容資料庫
首先,在 n8n 工作流程中,你需要新增一個 Google Sheets 節點。這個節點的作用是連接到你之前建立的 Google Sheets 內容模板,並讀取其中的資料。
- 認證設定:在 Google Sheets 節點中,你需要設定 Google 帳戶的認證。如果你是第一次使用,需要創建一個新的憑證。按照 n8n 的指示,授權 n8n 訪問你的 Google Sheets。
- 選擇試算表:成功認證後,選擇包含內容的 Google Sheets 試算表。你需要提供試算表的 ID 和工作表名稱。試算表 ID 通常可以在 Google Sheets 的 URL 中找到。
- 設定讀取範圍:設定要讀取的資料範圍。你可以選擇讀取整個工作表,或者指定一個特定的範圍。
使用 Function 節點:轉換 Google Sheets 數據
從 Google Sheets 讀取的資料通常需要進行轉換,才能符合 WordPress 的文章格式。這時候,Function 節點就派上用場了。Function 節點允許你使用 JavaScript 代碼來操作和轉換數據。
- 創建 Function 節點:在 n8n 工作流程中新增一個 Function 節點。
- 編寫轉換程式碼:在 Function 節點中,編寫 JavaScript 程式碼,將從 Google Sheets 讀取的數據轉換為 WordPress 文章所需的格式。這可能包括:
- 提取數據:從輸入的 JSON 數據中提取文章標題、內容、作者、分類等信息。
- 格式轉換:將 Markdown 格式的內容轉換為 HTML 格式。你可以使用 JavaScript 函式庫,例如 `markdown-it` 來實現這個轉換。
- 新增 HTML 標籤:根據需要,新增 HTML 標籤,例如 `
`、`
`、`
` 等,以確保文章在 WordPress 中的呈現效果。
- 處理圖片:如果你的 Google Sheets 中包含圖片 URL,你需要在 Function 節點中處理這些 URL,確保圖片能夠正確顯示在 WordPress 文章中。
- 範例程式碼:
const htmlContent = ` 你好呀!\n\n${content}`;
output = [{
json: {
title: title,
content: htmlContent,
author: author,
category: category
}
}];
return output;
這個範例程式碼從輸入的 JSON 數據中提取文章標題和內容,並將其轉換為 HTML 格式。你可以根據自己的需求修改程式碼。
內容優化與調整
在轉換數據的過程中,你還可以進行一些內容優化和調整,以提高文章的品質和 SEO 效果。
- SEO 優化:在 Function 節點中,你可以添加 SEO 關鍵字、修改 meta 描述等,以提高文章在搜尋引擎中的排名。
- 內容調整:根據需要在 Function 節點中調整文章內容,例如修改錯別字、調整語氣、新增內部連結等。
- 圖片優化:使用 Function 節點對圖片進行優化,例如壓縮圖片大小、新增 Alt 標籤等。
通過以上步驟,你就可以成功設定 n8n 工作流程,從 Google Sheets 中抓取資料,並將其轉換為 WordPress 可以接受的格式。在下一個章節中,我們將學習如何使用 n8n 的 WordPress 節點,將轉換後的內容自動發布到你的網站上.
n8n + WordPress: 建立自動化的內容發布流程結論
恭喜你!透過本文的逐步教學,你已經掌握了 n8n + WordPress: 建立自動化的內容發布流程 的核心技巧。從設定 `n8n` 環境,到建立 Google Sheets 內容模板,再到設定 `n8n` 與 WordPress API 的連接,以及設計 `n8n` 工作流程來抓取和轉換資料,你現在擁有了將內容自動發布到 WordPress 網站的強大能力。
這個自動化流程不僅能大幅節省你的時間和精力,更重要的是,它能幫助你保持內容發布的一致性。就像網站字體選擇對於品牌形象至關重要,你可以參考這篇關於 Google Fonts與WordPress網站字體選擇 的文章,瞭解如何透過細節提升網站的專業度,確保自動發布的內容同樣能呈現最佳效果。
此外,一個
記住,自動化是一個持續學習和優化的過程。 隨著你的經驗累積,你可以不斷調整和改進你的 `n8n` 工作流程,讓它更符合你的需求。 祝你在內容發布的自動化道路上一切順利!
n8n + WordPress:建立自動化的內容發布流程 常見問題快速FAQ
Q1: 我在使用 Docker 安裝 n8n 後,無法訪問 `http://localhost:5678` 介面,該怎麼辦?
請先確認 Docker 容器是否已成功啟動。您可以使用 docker ps
指令來查看正在運行的容器。 如果容器沒有運行,請檢查 Docker Compose 檔案 (`docker-compose.yml`) 的設定是否正確,並且重新執行 docker-compose up -d
指令。另外,也請檢查您的防火牆設定,確保 5678 端口沒有被封鎖。
Q2: 我已設定了 Google Sheets 模板,但在 n8n 工作流程中,無法成功抓取 Google Sheets 的資料,我該如何排查?
首先,請確認您的 Google Sheets 文件已正確分享給 n8n 服務帳戶,且服務帳戶具有 “編輯” 權限。 務必檢查服務帳戶的權限是否足夠讀取和寫入 Google Sheets。 接著,檢查 n8n 中 Google Sheets 節點的設定,確認試算表 ID 和工作表名稱是否正確。 您可以嘗試讀取一個小的資料範圍進行測試,例如 A1:B2,確保 n8n 可以成功連接並讀取資料。
Q3: 在設定 n8n 連接 WordPress 時,我收到了 “Unauthorized” 錯誤訊息,這是什麼原因?
“Unauthorized” 錯誤通常表示 n8n 無法通過驗證,無法存取 WordPress API。請確認您使用的是應用程式密碼,而不是 WordPress 後台登入密碼。 應用程式密碼是專門為應用程式(例如 n8n)存取 WordPress API 而設計的。檢查 WordPress 使用者名稱和應用程式密碼是否輸入正確。 確保您的 WordPress 網站已啟用 REST API,並且已安裝必要的插件(例如 WP Webhooks)。 啟用 REST API 通常需要在 WordPress 後台的「設定」->「固定連結」中,選擇一個非「預設」的固定連結格式。