OpenAI->Ghost 블로그
중급
이것은Content Creation, Multimodal AI분야의자동화 워크플로우로, 8개의 노드를 포함합니다.주로 Code, HttpRequest, ScheduleTrigger, OpenAi 등의 노드를 사용하며. GPT-4 기반 자동화된 블로그 글 생성 및 Ghost CMS 게시
사전 요구사항
- •대상 API의 인증 정보가 필요할 수 있음
- •OpenAI API Key
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
"id": "ePvpXpyW3KKPjM4x",
"meta": {
"instanceId": "256e0224567a81ad2d19d67041dccb4aba84a3ec55947042e28c6efa76b21434"
},
"name": "OpenAI->Ghost Blog",
"tags": [],
"nodes": [
{
"id": "d3434c5a-8579-47cf-ac05-a4cfef3fd3c4",
"name": "일정 트리거",
"type": "n8n-nodes-base.scheduleTrigger",
"position": [
0,
0
],
"parameters": {
"rule": {
"interval": [
{
"field": "hours",
"hoursInterval": 12,
"triggerAtMinute": 34
}
]
}
},
"typeVersion": 1.2
},
{
"id": "54953abf-38c2-4d1a-a4e2-13ee43a6e4db",
"name": "OpenAI",
"type": "@n8n/n8n-nodes-langchain.openAi",
"position": [
220,
0
],
"parameters": {
"modelId": {
"__rl": true,
"mode": "list",
"value": "gpt-4.1-mini-2025-04-14",
"cachedResultName": "GPT-4.1-MINI-2025-04-14"
},
"options": {},
"messages": {
"values": [
{
"content": "Write a high-quality blog post on a creative or thought-provoking topic. The tone should be engaging and immersive. Length: 2–4 paragraphs.\n\nThen add a brief paragraph offering an alternative perspective or logical counterpoint.\n\nFinally, generate:\n- Blog post title\n- Meta description\n- 5 tags"
}
]
}
},
"credentials": {
"openAiApi": {
"id": "",
"name": "OpenAi account"
}
},
"typeVersion": 1.8
},
{
"id": "63a4cf0d-1fdd-435c-a477-d6880590c42e",
"name": "HTTP 요청1",
"type": "n8n-nodes-base.httpRequest",
"position": [
1040,
0
],
"parameters": {
"url": "https://yourcustomurl.com/ghost/api/admin/posts/",
"method": "POST",
"options": {},
"jsonBody": "={{ JSON.stringify($json) }}",
"sendBody": true,
"sendHeaders": true,
"specifyBody": "json",
"authentication": "predefinedCredentialType",
"headerParameters": {
"parameters": [
{
"name": "Content-Type",
"value": "application/json"
}
]
},
"nodeCredentialType": "ghostAdminApi"
},
"credentials": {
"ghostAdminApi": {
"id": "pQKSsgQ9aBN9P1fA",
"name": "Ghost - Transcripspiracy"
}
},
"typeVersion": 4.2
},
{
"id": "4c460c9f-0074-4b9a-be5c-f0cfb8bae9bd",
"name": "코드",
"type": "n8n-nodes-base.code",
"position": [
600,
0
],
"parameters": {
"jsCode": "const content = $json.message.content;\n\n// Extract Blog Post Title\nconst titleMatch = content.match(/\\*\\*Blog Post Title:\\*\\*\\s*(.+)/i);\nconst title = titleMatch ? titleMatch[1].trim() : 'Untitled';\n\n// Extract Meta Description\nconst metaMatch = content.match(/\\*\\*Meta Description:\\*\\*\\s*(.+)/i);\nconst meta = metaMatch ? metaMatch[1].trim() : '';\n\n// Extract Tags\nconst tagsMatch = content.match(/\\*\\*Tags:\\*\\*\\s*(.+)/i);\nconst rawTags = tagsMatch ? tagsMatch[1] : '';\nconst tags = rawTags.split(',').map(t => t.trim()).filter(t => t);\n\n// Strip metadata from the body\nconst body = content\n .split('\\n\\n')\n .filter(p => !/\\*\\*Blog Post Title:\\*\\*/i.test(p) && !/\\*\\*Meta Description:\\*\\*/i.test(p) && !/\\*\\*Tags:\\*\\*/i.test(p))\n .join('\\n\\n');\n\n// Wrap in clean HTML\nconst html = `<div style=\"text-align:center; white-space:pre-line;\">${body.trim()}</div>`;\n\n// Return Ghost-compatible JSON\nreturn [\n {\n json: {\n title,\n html,\n status: 'published',\n tags,\n meta_description: meta\n }\n }\n];\n"
},
"typeVersion": 2
},
{
"id": "cb384074-daf5-4945-adf6-40657498493d",
"name": "코드1",
"type": "n8n-nodes-base.code",
"position": [
820,
0
],
"parameters": {
"jsCode": "const title = $json.title;\nconst status = $json.status || 'published';\nconst tags = ($json.tags || []).map(tag => ({ name: tag }));\n\n// Already wrapped with styling and line breaks — use as-is\nconst htmlContent = $json.html;\n\nconst mobiledoc = JSON.stringify({\n version: '0.3.1',\n atoms: [],\n cards: [['html', { html: htmlContent }]],\n markups: [],\n sections: [[10, 0]]\n});\n\nreturn [\n {\n posts: [\n {\n title,\n mobiledoc,\n status,\n tags\n }\n ]\n }\n];\n"
},
"typeVersion": 2
},
{
"id": "59c2276c-1ea7-4c95-929f-4fd894289909",
"name": "메모",
"type": "n8n-nodes-base.stickyNote",
"position": [
-180,
-180
],
"parameters": {
"width": 280,
"height": 140,
"content": "🚀 This workflow runs every 12 hours and creates a blog post using OpenAI."
},
"typeVersion": 1
},
{
"id": "842d8b2e-bc1c-43cd-9555-9117f1bdc5e1",
"name": "메모1",
"type": "n8n-nodes-base.stickyNote",
"position": [
220,
-200
],
"parameters": {
"content": "✍️ The AI generates content + metadata (title, tags, meta desc)."
},
"typeVersion": 1
},
{
"id": "19550cb9-26ed-4aae-b17c-1d9e2a46db2a",
"name": "메모2",
"type": "n8n-nodes-base.stickyNote",
"position": [
900,
-240
],
"parameters": {
"content": "📤 Posts are sent to your Ghost CMS via authenticated API."
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "d05670de-d0e0-4dfe-9338-2c219515e6d4",
"connections": {
"Code": {
"main": [
[
{
"node": "Code1",
"type": "main",
"index": 0
}
]
]
},
"Code1": {
"main": [
[
{
"node": "HTTP Request1",
"type": "main",
"index": 0
}
]
]
},
"54953abf-38c2-4d1a-a4e2-13ee43a6e4db": {
"main": [
[
{
"node": "Code",
"type": "main",
"index": 0
}
]
]
},
"Schedule Trigger": {
"main": [
[
{
"node": "54953abf-38c2-4d1a-a4e2-13ee43a6e4db",
"type": "main",
"index": 0
}
]
]
}
}
}자주 묻는 질문
이 워크플로우를 어떻게 사용하나요?
위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.
이 워크플로우는 어떤 시나리오에 적합한가요?
중급 - 콘텐츠 제작, 멀티모달 AI
유료인가요?
이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.
관련 워크플로우 추천
OpenAI 블로그 글 작성기
WooCommerce 제품 기반 GPT-4.1-mini 자동 블로그 글 생성
Code
Sort
Http Request
+
Code
Sort
Http Request
10 노드Thomas
콘텐츠 제작
WordPress와 ChatGPT를 활용한 블로그 글 자동 생성
예약 또는 트리거 방식으로 WordPress 콘텐츠를 생성하는 AI 블로그 글 생성기
Xml
Code
Wordpress
+
Xml
Code
Wordpress
19 노드Cadu | Ei, Doc!
콘텐츠 제작
AI 기반 동영상 제작 및 Instagram, TikTok, YouTube 업로드
클라우드 드라이브 기반 AI 기반 비디오 제작 및 Instagram, TikTok, YouTube 업로드
If
Set
Code
+
If
Set
Code
53 노드DevCode Journey
콘텐츠 제작
Dumpling AI를 사용하여 YouTube 동영상에서 플랫폼별 게시물 자동 생성
GPT-4o 및 Dumpling AI를 사용하여 YouTube 동영상에서 Instagram, Facebook 및 LinkedIn 게시물 자동 생성
Set
Code
Merge
+
Set
Code
Merge
20 노드Yang
콘텐츠 제작
블로그 게시물: 생태계 트렌드
Perplexity, GPT, Leonardo 및 WordPress를 사용하여 SEO 블로그 게시물 자동 생성
If
Code
Wait
+
If
Code
Wait
19 노드Cristian Tala Sánchez
콘텐츠 제작
GPT-5와 fal.ai 이미지를 사용한 키워드에서 WordPress까지 자동화 SEO 블로그 프로세스
GPT-5 및 fal.ai 이미지를 사용한 키워드 to WordPress SEO 블로그 프로세스 자동화
Set
Code
Wait
+
Set
Code
Wait
96 노드Paul
콘텐츠 제작