Workflow n8n tự động đăng WordPress hoạt động theo một chuỗi thẳng: Schedule Trigger kích hoạt → node gọi AI (OpenAI/Claude) viết nội dung → node xử lý tách JSON → node WordPress tạo bài qua REST API. Phần “cơ khí” này n8n làm được trong một buổi chiều. Cái quyết định thành-bại không phải kỹ thuật, mà là bạn cho bài đăng thẳng (publish) hay đẩy vào hàng chờ duyệt (draft/pending). Mình luôn chọn vế sau — và bài này giải thích vì sao đó là ranh giới giữa “hệ thống nội dung” và “cỗ máy tự bắn vào chân mình”.
TL;DR
- Nối n8n với WordPress bằng Application Password (Users → Profile), không dùng mật khẩu đăng nhập thật.
- Node WordPress của n8n hỗ trợ 3 resource: Post, Page, User; riêng Post có 5 thao tác: Create, Update, Delete, Get, Get Many *(n8n Docs, 2026)*.
- WordPress REST API tạo bài bằng
POST /wp/v2/posts; trườngstatusnhậnpublish,future,draft,pending,private*(WordPress REST API Handbook, cập nhật 16/01/2024)*. - Google không cấm nội dung AI. Chỉ cấm “sinh nhiều trang mà không thêm giá trị cho người dùng” — vi phạm *scaled content abuse* *(Google Search Central, cập nhật 10/12/2025)*.
- An toàn SEO = đăng vào
draft/pendingđể người duyệt, không auto-publish hàng loạt. - Chi phí thật của workflow này gần như chỉ là tiền token AI + VPS chạy n8n — không phát sinh phí per-post.
Workflow tự đăng WordPress gồm những node nào?
Một pipeline tối thiểu chỉ cần 4 node, chạy tuần tự:
- Schedule Trigger — hẹn giờ chạy (ví dụ 7h sáng mỗi ngày).
- HTTP Request / AI node — gọi model AI để sinh tiêu đề + nội dung.
- Code / Edit Fields — tách và làm sạch output của AI thành các trường rõ ràng.
- WordPress (Create Post) — đẩy bài lên site.
Đó là bộ khung. Khi cần chỉnh chu hơn, bạn chèn thêm node lấy chủ đề từ Google Sheet, node tạo ảnh, node gắn category/tag, và một node thông báo (Telegram/Email) để bạn biết “có bài mới chờ duyệt”. Nhưng đừng vội — dựng 4 node chạy được trước, rồi mới bồi.
n8n nối vào WordPress bằng cách nào?
Có ba đường, chọn theo độ phức tạp bạn cần:
| Cách nối | Khi nào dùng | Ưu / Nhược |
|---|---|---|
| Node WordPress (built-in) | Tạo/sửa Post, Page, User cơ bản | Nhanh, không cần biết API. Chỉ giới hạn ở Post/Page/User |
| HTTP Request → WordPress REST API | Cần trường REST API mà node không phơi ra (custom field, custom post type) | Toàn quyền, linh hoạt. Phải tự dựng request |
| Webhook (qua plugin) | Muốn WordPress *kích hoạt* workflow (có comment, có đơn hàng…) | Đảo chiều luồng. Cần cài plugin phía WP |
*(Nguồn: n8n Docs — WordPress node; WordPress REST API Handbook, 2024–2026)*
Với việc tự viết-và-đăng bài, node WordPress built-in là đủ. Node này thực chất là lớp bọc quanh WordPress REST API: khi chạy, nó dựng một HTTP request có xác thực tới đúng endpoint rồi trả kết quả cho node kế tiếp *(n8n Docs, 2026)*.
Tạo Application Password cho WordPress thế nào?
Đây là bước bảo mật bắt buộc — đừng bao giờ dán mật khẩu đăng nhập thật vào n8n. WordPress có sẵn cơ chế Application Password để cấp một chuỗi khóa riêng cho từng ứng dụng, thu hồi được độc lập mà không đổi mật khẩu chính.
- Vào WordPress Admin → Users → Profile.
- Kéo xuống mục Application Passwords.
- Đặt tên gợi nhớ, ví dụ
n8n-auto-post, bấm Add Application Password. - Copy chuỗi hiện ra ngay (chỉ hiện một lần) và cất nơi an toàn.
- Sang n8n: Settings → Credentials → Add Credential → WordPress, điền URL site (kèm
https://), username, và Application Password vừa tạo. Lưu — n8n tự gửi một request thử để kiểm tra kết nối *(Hostinger tutorial dẫn quy trình chính thức, 2026)*.
Mẹo an toàn: tạo một user riêng cấp Author/Editor cho bot, thay vì dùng tài khoản Admin. Nếu khóa lộ, thiệt hại được giới hạn.
Nối AI vào n8n để viết bài ra sao?
Bạn có hai lựa chọn để gọi model:
- Node AI Agent / model node (OpenAI, Anthropic Claude, Google Gemini đều được hỗ trợ) — cấu hình bằng giao diện, có bộ nhớ và gọi tool được.
- HTTP Request gọi thẳng API của nhà cung cấp — gọn, kiểm soát tối đa từng tham số.
Cả hai đều nhận một prompt và trả về text. Điểm mấu chốt không nằm ở node, mà ở prompt bạn nạp vào: nó phải yêu cầu AI trả đúng cấu trúc bạn cần cho bài WordPress — tiêu đề, nội dung, mô tả, slug, tag.
> Muốn viết prompt gọn mà điều khiển được output, xem bài Hub Prompt Engineering của mình: Prompt Engineering 2026. Còn cách nối API AI và xử lý output JSON chi tiết hơn, mình để riêng ở bài nối OpenAI/Claude vào n8n.
Làm sao ép AI trả JSON đúng cấu trúc?
Đây là chỗ 80% người mới vấp. Nếu bạn để AI trả một đống văn xuôi rồi cố “cắt” bằng tay, workflow sẽ gãy ngay khi model đổi cách trình bày. Cách chắc chắn: bắt AI trả JSON, rồi parse.
Trong prompt, yêu cầu rõ:
Trả về DUY NHẤT một object JSON, không thêm chữ nào ngoài JSON:
{
"title": "...",
"content": "... (HTML hoặc Markdown)",
"excerpt": "... (dưới 155 ký tự)",
"slug": "khong-dau-co-tu-khoa",
"tags": ["...", "..."]
}
Sau node AI, dùng một node Code (hoặc Edit Fields) để JSON.parse chuỗi trả về và tách thành từng trường. Từ đây, node WordPress chỉ việc ánh xạ: title → Title, content → Content, excerpt → Excerpt, và cứ thế. Nếu model đôi khi bọc JSON trong ““json “`, thêm một dòng làm sạch dấu backtick trước khi parse — lỗi này gặp thường xuyên, xử lý một lần là xong.
Nên đăng thẳng publish hay để draft?
Để draft hoặc pending. Gần như luôn luôn. Trường status trong REST API quyết định số phận bài viết:
| status | Ý nghĩa | Dùng khi |
|---|---|---|
publish |
Đăng công khai ngay | Chỉ khi bạn đã tin 100% pipeline (hiếm) |
draft |
Lưu nháp, chưa hiện | Mặc định an toàn — bạn duyệt rồi bấm đăng |
pending |
Chờ duyệt (có quy trình review) | Team nhiều người, có người biên tập |
future |
Hẹn giờ đăng | Kèm trường date ở tương lai |
private |
Chỉ người có quyền xem | Nội dung nội bộ |
*(Nguồn: WordPress REST API Handbook — Posts, 2024)*
Triết lý mình theo suốt cả hệ thống content: máy lo phần cơ khí, người giữ van chất lượng. n8n fetch chủ đề, gọi AI, dựng bài, gắn meta — nhưng bài dừng ở trạng thái nháp. Mỗi sáng mình đọc lướt, bổ sung con số thật/trải nghiệm thật, rồi mới bấm publish. Vế “người duyệt” này chính là thứ giữ bạn khỏi rơi vào cái bẫy ở mục tiếp theo.
Tự động đăng bài AI có bị Google phạt không?
Không — Google không phạt vì bạn dùng AI. Google phạt nội dung rỗng, bất kể ai/cái gì tạo ra nó. Đây là nguyên văn hướng dẫn của Google Search Central (cập nhật 10/12/2025):
> “Dùng công cụ AI tạo sinh hoặc công cụ tương tự để sinh nhiều trang mà không thêm giá trị cho người dùng có thể vi phạm chính sách spam về *scaled content abuse* của Google.”
Chú ý cụm “mà không thêm giá trị”. Chính sách này method-agnostic — Google xét *tại sao* bạn tạo trang, không xét *bằng cách nào*. Google còn khuyến nghị hai việc trực tiếp áp cho workflow tự động:
- Tập trung vào độ chính xác, chất lượng, độ liên quan — “đặc biệt khi tạo nội dung tự động” — gồm cả
, meta description, structured data và alt text ảnh *(Google Search Central, 10/12/2025)*. - Cho người đọc biết ngữ cảnh: “cân nhắc thêm thông tin về cách nội dung được tạo ra” — tức minh bạch về việc có dùng tự động hóa.
Dịch sang thực chiến: một pipeline auto-publish bắn 50 bài AI rỗng/ngày là công thức ăn *scaled content abuse*. Một pipeline dựng nháp → người duyệt bơm trải nghiệm gốc → đăng 1 bài chất/ngày thì đứng đúng phía Google muốn. Khác biệt nằm ở van người duyệt, không nằm ở việc bạn có dùng n8n hay không.
> Muốn hiểu sâu ranh giới “nội dung AI an toàn vs rỗng”, đọc thêm Hub n8n toàn tập và bài dùng AI viết review không mất tin cậy.
Lên lịch và gắn category, tag, ảnh thế nào?
Lịch chạy: node Schedule Trigger cho bạn đặt cron (ví dụ mỗi ngày 7h). Nếu muốn bài tự lên đúng khung giờ mà không cần bạn bấm, dùng status: future kèm trường date — WordPress sẽ tự publish khi tới hạn.
Category & tag: REST API nhận categories và tags dưới dạng mảng ID số, không phải tên chữ. Nên bước chuẩn bị: lấy ID các category cố định của bạn một lần, hard-code vào workflow, hoặc thêm node tra ID theo tên trước khi tạo post.
Ảnh featured: cần hai bước — upload ảnh qua endpoint media để lấy id, rồi truyền id đó vào trường featured_media của bài. Đây là chỗ hay quên, khiến bài lên mà trống ảnh đại diện.
Khối kinh nghiệm thực chiến của mình
Chính website bạn đang đọc chạy trên một pipeline họ hàng gần với cái mô tả ở trên. Vài bài học mình trả giá để có:
Sai lầm 1 — từng để auto-publish thẳng. Giai đoạn đầu mình cho bot đăng luôn publish cho “nhanh”. Kết quả: 4–5 bài phải kéo xuống nháp sửa lại. Đổi sang draft + duyệt tay, chất lượng ổn định hẳn, và mình ngủ ngon hơn.
Sai lầm 2 — parse văn xuôi thay vì JSON. Workflow gãy 2–3 lần/tuần vì AI đổi cách trình bày. Ép JSON + node làm sạch backtick là xong, gần như không gãy nữa.
Kết quả hiện tại: mình vận hành 1 site chính với 6 bài/tuần với thời gian duyệt trung bình khoảng 8 phút/bài. Phần AI viết ~70% khung; 30% ruột (số thật, trải nghiệm thật) mình bơm khi duyệt — đúng cái Google gọi là “thêm giá trị cho người dùng”.
> Muốn xem pipeline này mở rộng thành cả “nhà máy nội dung” một người vận hành, đọc Hub AI Agent & Content Factory.
Chi phí vận hành workflow này bao nhiêu?
Điểm hay của tự-host n8n: không có phí per-post. Ba khoản duy nhất:
- VPS chạy n8n: đã bàn kỹ ở bài cài n8n self-host trên VPS — cấu hình 2vCPU/4GB là đủ cho tải này.
- Token AI: trả theo lượng chữ sinh ra. Bài dài, model cao cấp thì tốn hơn; dùng model rẻ cho khung + model mạnh cho phần khó là cách tiết kiệm.
- Thời gian duyệt của bạn: khoản “chi phí” thật nhất, và cũng là khoản đáng giá nhất — vì nó chính là thứ giữ bài của bạn khỏi bị Google xếp vào nhóm rỗng.
So với dịch vụ auto-blog tính tiền theo bài, mô hình n8n + duyệt tay rẻ hơn rõ khi bạn chạy đều, và an toàn hơn nhiều về mặt SEO.
FAQ
Workflow này có cần biết code không?
Không bắt buộc. Node WordPress và node AI đều cấu hình bằng giao diện. Chỉ cần một node Code nhỏ để JSON.parse — mình đã đưa mẫu ở trên, copy sửa là chạy.
Node WordPress của n8n đăng được custom post type không?
Node built-in chỉ làm việc với Post, Page, User. Muốn custom post type, dùng HTTP Request gọi thẳng REST API tới endpoint tương ứng.
Có thể để bot tự đăng hẳn mà không cần mình duyệt không?
Về mặt kỹ thuật thì được (đặt status: publish). Nhưng mình khuyên không, vì rủi ro *scaled content abuse* và mất tín hiệu E-E-A-T. Giữ van người duyệt.
Application Password khác gì mật khẩu thường?
Nó là khóa riêng cho từng ứng dụng, thu hồi độc lập mà không đổi mật khẩu đăng nhập của bạn. Lộ khóa thì chỉ cần xóa khóa đó.
Tự động sinh title và meta description có bị Google soi không?
Google nói rõ phải “tập trung độ chính xác, chất lượng, độ liên quan — đặc biệt khi tạo nội dung tự động”, và điều này *bao gồm cả* title, meta description, structured data, alt text. Nghĩa là: tự động sinh được, nhưng phải chuẩn — không được rác.
Lỗi hay gặp nhất khi mới dựng là gì?
Ba lỗi kinh điển: quên copy Application Password (chỉ hiện một lần), truyền tên category thay vì ID, và parse văn xuôi thay vì JSON. Tránh được ba cái này là workflow chạy êm.
Kết
Dựng workflow n8n tự viết-và-đăng WordPress không khó về kỹ thuật — 4 node là chạy được. Cái khó, và cũng là cái tạo khác biệt, là kỷ luật giữ van người duyệt: cho máy lo phần cơ khí, còn bạn bơm phần ruột mà AI không tự có. Đó vừa là cách đứng đúng phía chính sách Google, vừa là cách nội dung của bạn thật sự đáng đọc.
Nếu bạn đang xây cụm tự động hóa cho riêng mình, bắt đầu từ Hub n8n toàn tập rồi lần lượt lắp các mảnh: cài n8n trên VPS → nối API AI → workflow này. Có câu hỏi cụ thể về pipeline của bạn, để lại comment — mình đọc hết.
*Miễn trừ: bài này mô tả cách dựng kỹ thuật và tóm tắt chính sách công khai của Google/WordPress tại thời điểm viết (04/08/2026). Chính sách nền tảng có thể đổi — luôn kiểm tra tài liệu gốc trước khi triển khai ở quy mô lớn.*
