自動備份 Squarespace 程式碼注入內容至 GitHub - n8n 工作流程

利用這個穩健的 n8n 工作流程,定期自動備份 Squarespace 頁首與頁尾的程式碼注入內容至 GitHub。用這些 n8n 範本來保護您的客製化程式碼。

工作流預覽

準備好自動化了嗎?

下載此 n8n 工作流程範本並立即開始使用。

適用對象

仰賴客製化程式碼注入的 Squarespace 開發者與設計師。
需要為關鍵網站配置進行版本控制的使用者。
任何尋求網站程式碼可靠、自動化災難復原方案的人。
想透過客製化腳本進一步運用 n8n 節點框架的高階 n8n 用戶。

總覽

在 Squarespace 這類平台維護客製化程式碼注入至關重要,但這些變更通常缺乏內建的版本控制,在網站更新或遷移時存在風險。這個強大的 n8n 工作流程透過提供一個排程、自動化直接備份至 GitHub 的方案來解決此問題。這個特定的 n8n 範本利用 HTTP 請求來抓取相關程式碼,並使用客製化的 n8n 節點腳本 (Cheerio) 仔細清理 HTML 資料,確保只儲存您注入的程式碼,而非平台的樣板內容。設定好這個 n8n 工作流程後,您就能安心,因為透過可靠的 n8n 觸發器,您的客製化頁首和頁尾會每兩小時被安全地儲存並進行版本控制。

運作方式

此自動化流程由一個設定為每兩小時執行的排程 n8n 觸發器啟動。或者,也可以透過「On clicking execute」n8n 節點手動執行。


  1. 資料擷取: Get Squarespace data n8n 節點(一個 HTTP Request)使用 page-context 格式查詢指定的 Squarespace URL,用來擷取當前的網站配置,包含頁首與頁尾的注入點。

  2. 資料拆分與中繼資料: 資料會被拆分成兩股串流:一股給頁首,一股給頁尾,透過「Set」n8n 節點(Get Header InjectionGet Footer Injection)。這些節點也會擷取並設定重要的中繼資料,例如網域名稱和時間戳記。

  3. 程式碼清理: Clean up FootersClean up Headers n8n 節點會利用內含 Cheerio 的客製化 JavaScript,移除 Squarespace 框架的標準元素,只留下真正客製化注入的程式碼。

  4. 準備推送至 GitHub: Merge Injections n8n 節點會將兩個清理後的項目(頁首資料與頁尾資料)重新組合。接著 Globals n8n 節點會套用用戶自訂的 GitHub 儲存庫設定(擁有者、名稱、路徑)。

  5. GitHub 儲存: Loop Over Items n8n 節點會分別處理頁首和頁尾資料。第一個 GitHub n8n 節點(Edit Injection data)會嘗試更新現有檔案。如果此操作失敗(當 If n8n 節點檢查到「找不到」錯誤,表示檔案尚不存在時會發生),流程會轉向 Create Injection data n8n 節點,確保檔案首次被建立。這種條件式邏輯保證了不是更新就是建立,從而維持一致的備份歷史紀錄。

安裝指南

若要有效部署此 n8n 工作流程,請依照以下步驟操作:


  1. 匯入: 複製提供的 n8n 工作流程 JSON 並貼到您的 n8n 實例中。

  2. Squarespace URL: 找到 Get Squarespace data n8n 節點,並將 URL 參數更新為您的 Squarespace 站點的主要網域。

  3. GitHub 憑證: 設定 Edit Injection dataCreate Injection data n8n 節點所需的 GitHub API 憑證。這需要一個擁有儲存庫寫入權限的個人存取權杖 (Personal Access Token)。

  4. 設定儲存庫路徑: 開啟 Globals n8n 節點並更新以下設定:

repo.owner:您的 GitHub 用戶名稱。
repo.name:目標儲存庫的名稱。
* repo.path:儲存備份的儲存庫內基礎路徑(資料夾)(例如:squarespace-backup/)。

  1. 啟用: 確認 Schedule Trigger n8n 觸發器已啟用,才能執行自動備份。

節點詳情

這個進階的 n8n 工作流程依賴於幾種特定的 n8n 節點類型:

Schedule Trigger (排程觸發器): 作為主要的 n8n 觸發器,每兩小時啟動備份程序。對於重複性任務來說是相當穩健的 n8n 節點。
HTTP Request (Get Squarespace data): 擷取原始的 Squarespace 頁面上下文資料。關鍵配置:使用 ?format=page-context 查詢參數。
Set (Get Header/Footer Injection & Globals): 主要用於資料處理。注入節點會擷取原始內容並建立輔助中繼資料(ID、網域)。Globals n8n 節點則統一管理 GitHub 的配置細節。
Code (Clean up Footers/Headers): 對於資料的純淨度至關重要。這些客製化腳本的 n8n 節點實作使用 cheerio 函式庫來解析 HTML 並移除 Squarespace 新增的樣板程式碼,只保留客製化注入的程式碼。
Merge (合併): 將獨立的頁首和頁尾資料串流重新組合成單一輸入串流,供後續處理。
Loop Over Items (Split In Batches) (迭代項目): 確保頁首檔案和頁尾檔案能被 GitHub n8n 節點依序且獨立地處理。


  • GitHub (Edit/Create Injection data) (GitHub 儲存): 處理實際的儲存作業。Edit 操作會嘗試更新檔案;如果失敗,If n8n 節點會將執行流程導向 Create 操作,從而在 GitHub 儲存庫中實現無縫的版本控制。

相關 n8n 工作流程

免費

節點: 10 節點
更新时间: 2025年12月26日
建立者

Automation specialist with 10+ years of experience helping SME website owners streamline their workflows—specializing in Squarespace, Shopify, and WordPress. Book an initial consultation for custom n8n automation using my link.

精選*