Hướng Dẫn Sử Dụng REST API của WordPress Toàn Tập
1. Xác Thực và Phân Quyền
REST API của WordPress yêu cầu xác thực khi thực hiện các thao tác bảo mật. Các phương pháp xác thực phổ biến bao gồm:
- Cookie Authentication: Được sử dụng khi người dùng đăng nhập qua giao diện WordPress.
- Application Passwords: Cung cấp một phương pháp đơn giản để xác thực từ các ứng dụng bên ngoài.
- OAuth: Phương pháp phổ biến cho các ứng dụng di động và web.
- Basic Authentication: Thường dùng cho phát triển và thử nghiệm.
2. Quản Lý Bài Viết (Posts)
2.1 Lấy Danh Sách Bài Viết
Để lấy danh sách tất cả các bài viết, sử dụng phương thức GET
với endpoint /wp-json/wp/v2/posts
:
GET http://example.com/wp-json/wp/v2/posts
Kết quả trả về là danh sách các bài viết với các thông tin cơ bản như ID, tiêu đề, và nội dung.
2.2 Lấy Một Bài Viết Theo ID
Để lấy thông tin chi tiết của một bài viết bằng cách sử dụng ID, sử dụng phương thức GET
với endpoint /wp-json/wp/v2/posts/{id}
:
GET http://example.com/wp-json/wp/v2/posts/123
Trong đó 123
là ID của bài viết bạn muốn lấy. Kết quả trả về là thông tin chi tiết của bài viết này.
2.3 Tạo Một Bài Viết Mới
Để tạo một bài viết mới, sử dụng phương thức POST
với endpoint /wp-json/wp/v2/posts
và gửi dữ liệu bài viết trong body của yêu cầu:
POST http://example.com/wp-json/wp/v2/posts
Dữ liệu (trong body của yêu cầu) có thể là:
{
“title”: “New Post”,
“content”: “Content of the new post.”,
“status”: “publish”
}
Kết quả sẽ trả về thông tin của bài viết mới vừa được tạo.
2.4 Cập Nhật Một Bài Viết
Để cập nhật thông tin của một bài viết cụ thể, sử dụng phương thức PUT
với endpoint /wp-json/wp/v2/posts/{id}
:
PUT http://example.com/wp-json/wp/v2/posts/123
Dữ liệu (trong body của yêu cầu) có thể là:
{
“title”: “Updated Post Title”,
“content”: “Updated content of the post.”
}
Kết quả sẽ trả về thông tin của bài viết sau khi đã được cập nhật.
2.5 Xóa Một Bài Viết
Để xóa một bài viết, sử dụng phương thức DELETE
với endpoint /wp-json/wp/v2/posts/{id}
:
DELETE http://example.com/wp-json/wp/v2/posts/123
Kết quả sẽ xác nhận rằng bài viết với ID 123 đã được xóa.
3. Quản Lý Trang (Pages)
3.1 Lấy Danh Sách Trang
Để lấy danh sách tất cả các trang, sử dụng phương thức GET
với endpoint /wp-json/wp/v2/pages
:
GET http://example.com/wp-json/wp/v2/pages
3.2 Lấy Một Trang Theo ID
Để lấy thông tin chi tiết của một trang bằng cách sử dụng ID, sử dụng phương thức GET
với endpoint /wp-json/wp/v2/pages/{id}
:
GET http://example.com/wp-json/wp/v2/pages/123
3.3 Tạo Một Trang Mới
Để tạo một trang mới, sử dụng phương thức POST
với endpoint /wp-json/wp/v2/pages
và gửi dữ liệu trang trong body của yêu cầu:
POST http://example.com/wp-json/wp/v2/pages
Dữ liệu (trong body của yêu cầu) có thể là:
{
“title”: “New Page”,
“content”: “Content of the new page.”,
“status”: “publish”
}
3.4 Cập Nhật Một Trang
Để cập nhật thông tin của một trang cụ thể, sử dụng phương thức PUT
với endpoint /wp-json/wp/v2/pages/{id}
:
PUT http://example.com/wp-json/wp/v2/pages/123
Dữ liệu (trong body của yêu cầu) có thể là:
{
“title”: “Updated Page Title”,
“content”: “Updated content of the page.”
}
3.5 Xóa Một Trang
Để xóa một trang, sử dụng phương thức DELETE
với endpoint /wp-json/wp/v2/pages/{id}
:
DELETE http://example.com/wp-json/wp/v2/pages/123
4. Quản Lý Danh Mục (Categories)
4.1 Lấy Danh Sách Danh Mục
Để lấy danh sách tất cả các danh mục, sử dụng phương thức GET
với endpoint /wp-json/wp/v2/categories
:
GET http://example.com/wp-json/wp/v2/categories
4.2 Lấy Một Danh Mục Theo ID
Để lấy thông tin chi tiết của một danh mục bằng cách sử dụng ID, sử dụng phương thức GET
với endpoint /wp-json/wp/v2/categories/{id}
:
GET http://example.com/wp-json/wp/v2/categories/123
4.3 Tạo Một Danh Mục Mới
Để tạo một danh mục mới, sử dụng phương thức POST
với endpoint /wp-json/wp/v2/categories
và gửi dữ liệu danh mục trong body của yêu cầu:
POST http://example.com/wp-json/wp/v2/categories
Dữ liệu (trong body của yêu cầu) có thể là:
{
“name”: “New Category”,
“description”: “Description of the new category.”
}
4.4 Cập Nhật Một Danh Mục
Để cập nhật thông tin của một danh mục cụ thể, sử dụng phương thức PUT
với endpoint /wp-json/wp/v2/categories/{id}
:
PUT http://example.com/wp-json/wp/v2/categories/123
Dữ liệu (trong body của yêu cầu) có thể là:
{
“name”: “Updated Category Name”,
“description”: “Updated description of the category.”
}
4.5 Xóa Một Danh Mục
Để xóa một danh mục, sử dụng phương thức DELETE
với endpoint /wp-json/wp/v2/categories/{id}
:
DELETE http://example.com/wp-json/wp/v2/categories/123
5. Quản Lý Thẻ (Tags)
5.1 Lấy Danh Sách Thẻ
Để lấy danh sách tất cả các thẻ, sử dụng phương thức GET
với endpoint /wp-json/wp/v2/tags
:
GET http://example.com/wp-json/wp/v2/tags
5.2 Lấy Một Thẻ Theo ID
Để lấy thông tin chi tiết của một thẻ bằng cách sử dụng ID, sử dụng phương thức GET
với endpoint /wp-json/wp/v2/tags/{id}
:
GET http://example.com/wp-json/wp/v2/tags/123
5.3 Tạo Một Thẻ Mới
Để tạo một thẻ mới, sử dụng phương thức POST
với endpoint /wp-json/wp/v2/tags
và gửi dữ liệu thẻ trong body của yêu cầu:
POST http://example.com/wp-json/wp/v2/tags
Dữ liệu (trong body của yêu cầu) có thể là:
{
“name”: “New Tag”,
“description”: “Description of the new tag.”
}
5.4 Cập Nhật Một Thẻ
Để cập nhật thông tin của một thẻ cụ thể, sử dụng phương thức PUT
với endpoint /wp-json/wp/v2/tags/{id}
:
PUT http://example.com/wp-json/wp/v2/tags/123
Dữ liệu (trong body của yêu cầu) có thể là:
{
“name”: “Updated Tag Name”,
“description”: “Updated description of the tag.”
}
5.5 Xóa Một Thẻ
Để xóa một thẻ, sử dụng phương thức DELETE
với endpoint /wp-json/wp/v2/tags/{id}
:
DELETE http://example.com/wp-json/wp/v2/tags/123
6. Quản Lý Thuật Ngữ (Terms)
6.1 Lấy Danh Sách Thuật Ngữ
Để lấy danh sách tất cả các thuật ngữ, sử dụng phương thức GET
với endpoint /wp-json/wp/v2/terms
:
GET http://example.com/wp-json/wp/v2/terms
6.2 Lấy Một Thuật Ngữ Theo ID
Để lấy thông tin chi tiết của một thuật ngữ bằng cách sử dụng ID, sử dụng phương thức GET
với endpoint /wp-json/wp/v2/terms/{id}
:
GET http://example.com/wp-json/wp/v2/terms/123
6.3 Tạo Một Thuật Ngữ Mới
Để tạo một thuật ngữ mới, sử dụng phương thức POST
với endpoint /wp-json/wp/v2/terms
và gửi dữ liệu thuật ngữ trong body của yêu cầu:
POST http://example.com/wp-json/wp/v2/terms
Dữ liệu (trong body của yêu cầu) có thể là:
{
“name”: “New Term”,
“description”: “Description of the new term.”
}
6.4 Cập Nhật Một Thuật Ngữ
Để cập nhật thông tin của một thuật ngữ cụ thể, sử dụng phương thức PUT
với endpoint /wp-json/wp/v2/terms/{id}
:
PUT http://example.com/wp-json/wp/v2/terms/123
Dữ liệu (trong body của yêu cầu) có thể là:
{
“name”: “Updated Term Name”,
“description”: “Updated description of the term.”
}
6.5 Xóa Một Thuật Ngữ
Để xóa một thuật ngữ, sử dụng phương thức DELETE
với endpoint /wp-json/wp/v2/terms/{id}
:
DELETE http://example.com/wp-json/wp/v2/terms/123
7. Quản Lý Tác Giả (Authors)
7.1 Lấy Danh Sách Tác Giả
Để lấy danh sách tất cả các tác giả, sử dụng phương thức GET
với endpoint /wp-json/wp/v2/users
:
GET http://example.com/wp-json/wp/v2/users
7.2 Lấy Một Tác Giả Theo ID
Để lấy thông tin chi tiết của một tác giả bằng cách sử dụng ID, sử dụng phương thức GET
với endpoint /wp-json/wp/v2/users/{id}
:
GET http://example.com/wp-json/wp/v2/users/123
7.3 Tạo Một Tác Giả Mới
Để tạo một tác giả mới, sử dụng phương thức POST
với endpoint /wp-json/wp/v2/users
và gửi dữ liệu tác giả trong body của yêu cầu:
POST http://example.com/wp-json/wp/v2/users
Dữ liệu (trong body của yêu cầu) có thể là:
{
“username”: “newuser”,
“email”: “
[email protected]”,
“password”: “password123”,
“roles”: [“subscriber”]
}
7.4 Cập Nhật Một Tác Giả
Để cập nhật thông tin của một tác giả cụ thể, sử dụng phương thức PUT
với endpoint /wp-json/wp/v2/users/{id}
:
PUT http://example.com/wp-json/wp/v2/users/123
Dữ liệu (trong body của yêu cầu) có thể là:
7.5 Xóa Một Tác Giả
Để xóa một tác giả, sử dụng phương thức DELETE
với endpoint /wp-json/wp/v2/users/{id}
:
DELETE http://example.com/wp-json/wp/v2/users/123
8. Lấy Bài Viết Theo ID và Slug
Để lấy bài viết theo ID:
GET http://example.com/wp-json/wp/v2/posts/{id}
Để lấy bài viết theo slug:
GET http://example.com/wp-json/wp/v2/posts?slug={slug}
Trong đó {slug}
là slug của bài viết bạn muốn tìm.
Hy vọng phiên bản chi tiết này giúp bạn nắm rõ cách sử dụng REST API của WordPress để quản lý các tài nguyên và thực hiện các thao tác bảo mật. Nếu bạn có thêm câu hỏi hoặc cần hỗ trợ thêm, hãy cho tôi biết!