NewsAPIとGoogle Geminiを使用してテクノロジーニュースブログ記事を自動生成し、WordPressに公開
中級
これはContent Creation, Multimodal AI分野の自動化ワークフローで、9個のノードを含みます。主にCode, Wordpress, HttpRequest, SplitInBatches, Agentなどのノードを使用。 NewsAPIとGoogle Geminiを使用して自動のにテクノロジーニュースブログ記事を生成し、WordPressに投稿
前提条件
- •ターゲットAPIの認証情報が必要な場合あり
- •Google Gemini API Key
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
"meta": {
"instanceId": "2000c64071c20843606b95c63795bb0797c41036047055a6586498e855b96efc",
"templateCredsSetupCompleted": true
},
"nodes": [
{
"id": "ba65f2c4-f38e-407c-87d8-5540a98ce6e3",
"name": "付箋",
"type": "n8n-nodes-base.stickyNote",
"position": [
-336,
-176
],
"parameters": {
"width": 2092,
"height": 588,
"content": "## Daily News Digest Automation\n\n**What it does:**\n- Fetches top tech news every day at 8 AM\n- AI summarizes and creates engaging blog post\n- Auto-publishes to WordPress\n\n**Setup Required:**\n1. Get free NewsAPI key from newsapi.org\n2. Replace YOUR_API_KEY in the HTTP Request URL with your actual key\n3. Configure WordPress credentials in the WordPress node\n4. Set up Google Gemini API credentials for AI agent\n\n**Customization:**\n- Change schedule time in trigger (currently 8 AM daily)\n- Modify news sources/categories in URL parameters\n- Adjust AI prompt for different writing styles\n- Change post status from \"publish\" to \"draft\" for review\n\n**Need Help?**\nFor [n8n coaching or one-on-one consultation:](mailto:david@daexai.com)"
},
"typeVersion": 1,
"Google Gemini Chat Model": {
"ai_languageModel": [
[
{
"node": "AI News Summarizer",
"type": "ai_languageModel",
"index": 0
}
]
]
}
},
{
"id": "8f0b8ffe-e898-4d43-8b67-1ebe60c2e3a6",
"name": "毎日8時トリガー",
"type": "n8n-nodes-base.scheduleTrigger",
"position": [
128,
48
],
"parameters": {
"rule": {
"interval": [
{
"field": "cronExpression",
"expression": "0 8 * * *"
}
]
}
},
"typeVersion": 1.2
},
{
"id": "f002cec0-eee4-457e-9b81-81b1bc4cf8aa",
"name": "テックニュース取得",
"type": "n8n-nodes-base.httpRequest",
"position": [
320,
48
],
"parameters": {
"url": "https://newsapi.org/v2/top-headlines?apiKey=yourkey&country=us&category=technology&pageSize=10",
"options": {},
"sendBody": true,
"authentication": "genericCredentialType",
"bodyParameters": {
"parameters": [
{
"name": "country",
"value": "us"
},
{
"name": "pageSize",
"value": "10"
},
{
"name": "category",
"value": "technology"
}
]
},
"genericAuthType": "httpQueryAuth"
},
"credentials": {
"httpQueryAuth": {
"id": "VHh5tyahYp2OlfDs",
"name": "Query Auth account"
}
},
"typeVersion": 4.1
},
{
"id": "8a7b5502-fa7f-4a19-ba44-f0da9fb71f10",
"name": "AIニュース要約",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
992,
48
],
"parameters": {
"text": "=You are a tech news writer. Based on the article provided, write an engaging blog post.\n\nReturn ONLY valid JSON in this exact format:\n{\n \"title\": \"Your catchy headline here\",\n \"content\": \"Full blog post content with proper formatting\"\n}\n\nArticle details:\n- Title: {{ $json.title }}\n- Description: {{ $json.description }}\n- Content: {{ $json.content }}\n- Source: {{ $json.source }}\n\nWrite a 600-800 word blog post expanding on this article.",
"options": {
"systemMessage": "You are a tech news curator. Create a compelling blog post that summarizes the top tech news stories. Format it with proper headings, bullet points, and include brief commentary on each story's significance. Make it engaging and informative for a general tech audience."
},
"promptType": "define"
},
"typeVersion": 2.2
},
{
"id": "4006ddaa-e0ae-4b88-9ed8-bf83a7c6dce3",
"name": "Google Gemini チャットモデル",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
1072,
272
],
"parameters": {
"options": {}
},
"credentials": {
"googlePalmApi": {
"id": "wNw45YZvXXpeocJ2",
"name": "TST API"
}
},
"typeVersion": 1
},
{
"id": "446986b0-41ee-43c0-bec0-58db6c6530c0",
"name": "WordPress に公開",
"type": "n8n-nodes-base.wordpress",
"position": [
1488,
48
],
"parameters": {
"title": "={{ $json.title }}",
"additionalFields": {
"tags": [
"technology",
"news",
"daily",
"automation"
],
"status": "publish",
"content": "={{ $json.content }}"
}
},
"typeVersion": 1
},
{
"id": "bc06c085-5fa9-495c-ad5c-0cfe0c0cd500",
"name": "アイテムをループ",
"type": "n8n-nodes-base.splitInBatches",
"position": [
768,
48
],
"parameters": {
"options": {}
},
"typeVersion": 3
},
{
"id": "97aa2d40-ad65-4570-bcda-45d13c67c07f",
"name": "タイトルとコンテンツ",
"type": "n8n-nodes-base.code",
"position": [
1264,
48
],
"parameters": {
"jsCode": "const items = $input.all();\n\nreturn items.map(item => {\n // Remove markdown code blocks and parse JSON\n let aiOutput = item.json.output;\n \n // Remove ```json and ``` markers\n aiOutput = aiOutput.replace(/```json\\s*/, '').replace(/```\\s*$/, '');\n \n // Parse the cleaned JSON\n const parsedOutput = JSON.parse(aiOutput.trim());\n \n return {\n json: {\n title: parsedOutput.title,\n content: parsedOutput.content,\n originalTitle: item.json.title,\n source: item.json.source,\n url: item.json.url\n }\n };\n});"
},
"typeVersion": 2
},
{
"id": "ac0c85f6-d554-40c0-8cd2-a5869367cb5a",
"name": "記事を分割",
"type": "n8n-nodes-base.code",
"position": [
544,
48
],
"parameters": {
"jsCode": "// Split the articles array and clean up the data\nconst articles = $input.first().json.articles;\n\n// Filter out articles with null/missing content and limit to top 5\nconst validArticles = articles\n .filter(article => \n article.title && \n article.description && \n article.content && \n article.content !== \"[Removed]\"\n )\n .slice(0, 5); // Limit to 5 articles to avoid rate limits\n\n// Return each article as a separate item\nreturn validArticles.map(article => ({\n json: {\n title: article.title,\n description: article.description,\n content: article.content,\n url: article.url,\n urlToImage: article.urlToImage,\n publishedAt: article.publishedAt,\n source: article.source.name\n }\n}));"
},
"typeVersion": 2
}
],
"pinData": {},
"connections": {
"ac0c85f6-d554-40c0-8cd2-a5869367cb5a": {
"main": [
[
{
"node": "bc06c085-5fa9-495c-ad5c-0cfe0c0cd500",
"type": "main",
"index": 0
}
]
]
},
"f002cec0-eee4-457e-9b81-81b1bc4cf8aa": {
"main": [
[
{
"node": "ac0c85f6-d554-40c0-8cd2-a5869367cb5a",
"type": "main",
"index": 0
}
]
]
},
"bc06c085-5fa9-495c-ad5c-0cfe0c0cd500": {
"main": [
[],
[
{
"node": "8a7b5502-fa7f-4a19-ba44-f0da9fb71f10",
"type": "main",
"index": 0
}
]
]
},
"8f0b8ffe-e898-4d43-8b67-1ebe60c2e3a6": {
"main": [
[
{
"node": "f002cec0-eee4-457e-9b81-81b1bc4cf8aa",
"type": "main",
"index": 0
}
]
]
},
"97aa2d40-ad65-4570-bcda-45d13c67c07f": {
"main": [
[
{
"node": "446986b0-41ee-43c0-bec0-58db6c6530c0",
"type": "main",
"index": 0
}
]
]
},
"8a7b5502-fa7f-4a19-ba44-f0da9fb71f10": {
"main": [
[
{
"node": "97aa2d40-ad65-4570-bcda-45d13c67c07f",
"type": "main",
"index": 0
}
]
]
},
"446986b0-41ee-43c0-bec0-58db6c6530c0": {
"main": [
[
{
"node": "bc06c085-5fa9-495c-ad5c-0cfe0c0cd500",
"type": "main",
"index": 0
}
]
]
},
"4006ddaa-e0ae-4b88-9ed8-bf83a7c6dce3": {
"ai_languageModel": [
[
{
"node": "8a7b5502-fa7f-4a19-ba44-f0da9fb71f10",
"type": "ai_languageModel",
"index": 0
}
]
]
}
}
}よくある質問
このワークフローの使い方は?
上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。
このワークフローはどんな場面に適していますか?
中級 - コンテンツ作成, マルチモーダルAI
有料ですか?
このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。
関連ワークフロー
Gemini AIでGitHubの人気リポジトリから週次のチュートリアルを自動生成し、WordPressに投稿
Gemini AI を使って GitHub 人気リポジトリから週次チュートリアルを自動生成し WordPress に投稿
Code
Split Out
Email Send
+
Code
Split Out
Email Send
9 ノードDavid Olusola
コンテンツ作成
コンテンツジェネレーター v3
AI驱动ブログ自動化:使用GPT-4生成并公開SEO記事至WordPressとTwitter
If
Set
Code
+
If
Set
Code
144 ノードJay Emp0
コンテンツ作成
Gemini AI と Blotato を使って WordPress 記事を自動のにソーシャルメディアに投稿する
Gemini AI と Blotato を使って WordPress 記事を自動のにソーシャルメディアに投稿する
If
Code
Split Out
+
If
Code
Split Out
11 ノードDavid Olusola
ソーシャルメディア
ブログパブリッシャー – 完全AI駆動のコンテンツ調査、作成、最適化、公開の自動化
Gemini、Ideogram AI、WordPress でブログ作成と公開を自動化
If
Set
Code
+
If
Set
Code
35 ノードIncrementors
コンテンツ作成
Gemini AI と Flux 画像生成で人気投稿分析から LinkedIn コンテンツを自動作成
人気の投稿分析を通じて Gemini AI と Flux 画像生成による LinkedIn コンテンツの自動作成
Code
Wait
Filter
+
Code
Wait
Filter
20 ノードRoshan Ramani
コンテンツ作成
キーワードからGPT-5とfal.ai画像を使ってWordPressまで自動SEOブログ生成のプロセス
GPT-5とfal.ai画像を使用したキーワードからWordPressへのSEOブログ自動化プロセス
Set
Code
Wait
+
Set
Code
Wait
96 ノードPaul
コンテンツ作成
ワークフロー情報
難易度
中級
ノード数9
カテゴリー2
ノードタイプ8
作成者
David Olusola
@dae221I help ambitious businesses eliminate operational bottlenecks and scale faster with AI automation. My clients typically see 40-60% efficiency gains within 90 days. Currently accepting 3 new projects this quarter - david@daexai.com
外部リンク
n8n.ioで表示 →
このワークフローを共有