Hướng dẫn tạo 1 workflow trên n8n thực hiện việc viết bài bằng AI và đăng bài tự động lên website hàng ngày theo chủ đề được note trong 1 file Google Sheet. Bài viết phân thành các chuyên mục tự nhiên với tiêu đề đoạn có đánh thẻ Heading (H2, H3, H4,…) và các đoạn văn tách biệt, có hình ảnh kèm theo dưới mỗi đoạn, cấu hình ảnh thumbnail, chuyên mục, đánh tags, các thẻ meta title, description,…
1. Chuẩn bị:
– Tài khoản Google (miễn phí) để tạo file google sheet note chủ đề cần đăng bài hàng ngày.
– Website WordPress muốn đăng bài hàng ngày (có quyền admin để đăng bài qua API)
– Tài khoản trả phí OpenAI hoặc Deepseek (để dùng API viết bài và tạo các thẻ SEO)
– Tài khoản n8n Cloud hoặc tự host theo hướng dẫn
2. Cách làm:
– Bước 1: Tạo file Google Sheet mới gồm các cột:
+ STT: Để nhập số thứ tự bài đăng cho workflow lựa chọn thứ tự đăng hàng ngày. Cột này chúng ta có thể setup để nó tự động tăng lên 1 đơn vị khi có nội dung được nhập vào cột Chủ đề bằng cách dử dụng hàm sau: ARRAYFORMULA(IF(LEN(B2:B);ROW(B2:B)-1;””))
+ Chủ đề: Để nhập chủ đề của từng ngày mình muốn đăng bài (mỗi ngày 1 chủ đề)
+ Mô tả nội dung: Mô tả chung nhất các nội dung dự kiến muốn đăng để AI dựa vào đó viết nội dung phù hợp cho bài đăng.
+ Hình ảnh: Hình ảnh chúng ta muốn sử dụng cho bài đăng (trong bài mình dùng 2 ảnh cho mỗi bài đăng). Chúng ta có thể sử dụng node AI Agent và sử dụng các model tương ứng để tự động gen ra ảnh ngay trong workflow nhưng qua thực tế mình thấy AI gent ảnh vẫn chưa đạt yêu cầu nên mình sẽ truyền hình ảnh thiết kế sẵn vào cho workflow mà không dùng AI gen ảnh. Ngoài ra chúng ta cũng có thể sử dụng AI tìm kiếm ảnh trên các trang cung cấp ảnh free như freepick để dùng cho bài đăng.
+ Danh mục: Là các đanh mục trên website của mình mà bài đăng mình dự kiến sẽ đăng vào danh mục đó (Nhớ lấy ID của danh mục tương ứng với từng danh mục vì chúng ta sẽ chọn danh mục thông qua ID danh mục)
+ Trạng thái đăng: Là cột để cập nhật trạng thái sau khi đăng sẽ đánh dấu là đã đăng để lần sau không đăng bài trùng lặp.
Bước 2:
Đăng nhập website WordPress tạo mật khẩu ứng dụng trên website để đăng bài tự động.
+ Ở bước này chúng ta sẽ cần đăng nhập website wordpress với tài khoản admin và tạo 1 mật khẩu ứng dụng (Application Password) trên phần my profile của tài khoản website WordPress và copy mật khẩu được hệ thống tạo ra.
Bước 3:
Tạo workflow trên n8n
+ Tạo 1 workflow mới trên n8n với các node:
- Trigger: Tạo Schedule Trigger với cấu hình Trigger Rules như như sau:
Trigger Interval = “Days”, Days Between Triggers = “1″, Trigger at Hour = [Thời gian muốn đăng bài]
- Google sheet => chọn sự kiện Get row(s) in sheet để đọc dữ liệu theo từng hàng trên Google sheet (Xem thêm cách kết nối đến API Google: TẠI ĐÂY). Cấu hình tương tự như trong hình dưới.
- Code: Nhập đoạn code Javascript để thực hiện chọn 1 chủ đề chưa đăng theo thứ tự ở cột STT gửi cho node AI trong node tiếp theo viết bài.
- OpenAI: Node này chúng ta có thể dùng model ChatGPT hoặc Deepseek để thực hiện viết bài. Bạn sẽ cần kết nối API đến OpenAI (hoặc Deepseek) theo hướng dẫn TẠI ĐÂY:
- Http Request: Ở bước này chúng ta sẽ kết nối đến website WordPress của chúng ta để lấy các hình ảnh từ node trước và đăng lên thư mục media của website trước, ở các bước sau chúng ta sẽ sử dụng hình ảnh này để cho vào bài viết (dưới mỗi đoạn văn) và dùng để set ảnh thumbnail bài viết:
- Merge: Ở bước này chúng ta sẽ dùng node Merge để đợi 2 hình ảnh up lên xong mới đi bước tiếp theo (vì trong workflow chúng ta đăng 2 hình ảnh lên cùng lúc). Node này chúng ta cấu hình như ảnh bên dưới:
- Http Request: Ở bước này chúng ta sẽ kết nối đến website WordPress của chúng ta để lấy tiêu đề, nội dung, hình ảnh từ node trước và sắp xếp lại cấu trúc bài đăng theo các thẻ html cần thiết sau đó đăng lên website website:
- Http Request: Ở bước này chúng ta sẽ kết nối đến website WordPress của chúng ta để set ảnh thumbnail cho website (Ở đây mình lấy luôn ảnh 1 đã up lên trong bài viết để làm ảnh đại diện):
- AI Agent: Ở bước này chúng ta sẽ sử dụng node AI Agent với model ChatGPT 4o để yêu cầu AI viết các thẻ tối ưu SEO cho bài viết (Title, Description, URL,…).
- AI Agent: Ở bước này chúng ta sẽ sử dụng node AI Agent với model ChatGPT 4o để yêu cầu AI viết các thẻ tối ưu SEO cho bài viết (Title, Description, URL,…).
- Http Request: Ở node này chúng ta sẽ kết nối lại với bài đăng đã đăng trên wordpress và set các thẻ tối ưu SEO vào các trường tương ứng trên plugin Rank math SEO (Nếu bạn dùng Yoat SEO thì lấy URL và các trường tương ứng của Yoat SEO).
- Set: Ở node này chúng ta sẽ gán tên các danh mục tương ứng trên website của chúng ta (mà chúng ta nhập vào trên file Google Sheet) với ID tương ứng của danh mục đó trên website. Ở đây mình có các danh mục và ID danh mục tương ứng như hình dưới và mình gán vào trường category_id
- Http Request: Ở node này chúng ta sẽ kết nối lại bài đăng trên website và gắn ID danh mục đã set ở node trước.
- Http Request: Ở node này chúng ta sẽ kết nối lại bài đăng trên website và gắn ID danh mục đã set ở node trước.
- Set: Ở node này chúng ta sẽ lấy toàn bộ ID của các tags trên website để phục vụ cho việc đánh tags.
- Http Request: Ở node này chúng ta sẽ kết nối lại bài đăng trên website và gắn ID các tags cho bài viết (khoảng 2-4 tags đã set ở node trước).
- Google Sheet: Ở node này chúng ta sẽ chọn sự kiện là update sheet để update vào cột trạng thái là “Done” sau khi chủ đề của dòng tương ứng đã được đăng lên Facebook.
Như vậy là xong, bạn có thể lưu lại workflow và test thử trước khi active cho nó chạy tự động!
Hãy để lại bình luận xuống phía dưới nếu bạn cần hỗ trợ thêm!
Chúc các bạn thành công!