GitHub로의 Squarespace 코드 주입 자동 백업 - n8n 워크플로우

이 강력한 n8n 워크플로우를 사용하여 Squarespace 헤더 및 푸터 코드 주입 내용을 정기적으로 GitHub에 자동으로 백업하세요. 이 n8n 템플릿으로 사용자 지정 코드를 안전하게 보호하세요.

워크플로우 미리보기

자동화할 준비가 되셨나요?

이 n8n 워크플로우 템플릿을 다운로드하고 즉시 사용을 시작하세요.

추천 대상

Squarespace 커스텀 코드 주입에 의존하는 개발자 및 디자이너.
중요한 웹사이트 구성에 대한 버전 관리가 필요한 사용자.
웹사이트 코드에 대한 안정적이고 자동화된 재해 복구 솔루션을 찾는 모든 사람.
커스텀 스크립팅과 n8n 노드 프레임워크 사용의 고급 예시를 찾는 n8n 파워 유저.

개요

Squarespace와 같은 플랫폼에서 커스텀 코드 주입을 유지하는 것은 중요하지만, 이러한 변경 사항에는 종종 기본 버전 관리 기능이 부족하여 업데이트나 사이트 마이그레이션 시 위험을 초래합니다. 이 강력한 n8n 워크플로우는 예정된 자동 백업 솔루션을 GitHub로 바로 제공하여 이 문제를 해결합니다. 이 특정 n8n 템플릿은 HTTP 요청을 사용하여 관련 코드를 가져오고, 커스텀 n8n 노드 스크립팅(Cheerio)을 사용하여 HTML 데이터를 세밀하게 정리함으로써 플랫폼의 기본 코드(boilerplate)가 아닌 주입된 코드만 저장되도록 보장합니다. 이 n8n 워크플로우를 설정하면 안정적인 n8n 트리거를 통해 2시간마다 커스텀 헤더와 푸터가 안전하게 저장되고 버전 관리된다는 사실에 안심할 수 있습니다.

작동 방식

이 자동화는 2시간마다 실행되도록 구성된 예약된 n8n 트리거로 시작됩니다. 또는 '실행 클릭 시(On clicking execute)' n8n 노드를 통해 수동으로 실행할 수도 있습니다.


  1. 데이터 검색: Get Squarespace data n8n 노드(HTTP 요청)는 지정된 Squarespace URL에 page-context 형식을 사용하여 쿼리하고, 헤더 및 푸터 주입 지점을 포함한 현재 사이트 구성을 검색합니다.

  2. 데이터 분리 및 메타데이터: 데이터는 'Set' n8n 노드(Get Header Injection 및 Get Footer Injection)를 사용하여 헤더용 스트림과 푸터용 스트림 두 개로 분할됩니다. 이 노드들은 도메인 이름 및 타임스탬프와 같은 중요 메타데이터도 추출하여 설정합니다.

  3. 코드 정리: Clean up Footers 및 Clean 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 data 및 Create 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 트리거 역할을 하며, 2시간마다 백업 프로세스를 시작합니다. 반복적인 작업을 위한 매우 안정적인 n8n 노드입니다.
HTTP Request (Get Squarespace data): 원본 Squarespace 페이지 컨텍스트 데이터를 가져옵니다. 주요 설정: ?format=page-context 쿼리 매개변수를 사용합니다.
Set (Get Header/Footer Injection & Globals): 주로 데이터 처리에 사용됩니다. 주입(Injection) 노드는 원본 콘텐츠를 추출하고 지원 메타데이터(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): 실제 저장을 담당합니다. Edit 작업은 파일을 업데이트하려고 시도하며, 실패할 경우 If n8n 노드가 실행 흐름을 Create 작업으로 유도하여 GitHub 리포지토리 내에서 원활한 버전 관리가 가능하게 합니다.

관련 n8n 워크플로우

무료

노드: 10 노드
업데이트됨: 12월 26 2025
모두 보기
작성자

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.

추천*