Ngày trước khi chưa biết tới WordPress REST API, mình thường tạo 1 page /api và viết API cho WordPress. Việc đó khá tốn thời gian, công sức và nhiều khi không được như ý. Còn bây giờ với WordPress REST API, mọi thứ dường như đã dễ dàng hơn khá nhiều. Mình sẽ chia sẻ lại nhưng kinh nghiệm sau khi trải nghiệm với WordPress REST API.
WordPress REST API là gì?
WordPress REST API cung cấp API Endpoint cho phép các lập trình viên tương tác với các trang web từ xa bằng cách gửi và nhận các đối tượng JSON (Ký hiệu đối tượng JavaScript). JSON là một định dạng dữ liệu tiêu chuẩn mở, nhẹ và dễ đọc. Khi bạn gửi nội dung đến hoặc đưa ra yêu cầu tới API, phản hồi sẽ được trả về ở định dạng JSON. Điều này cho phép các lập trình viên tạo, đọc và cập nhật nội dung WordPress từ xa hoặc từ các ứng dụng bên ngoài.
Các khái niệm của WordPress REST API
Để bắt đầu, bạn cần hiểu các khái niệm sau:
- Routes/Endpoints: Có thể hiểu đây là đường dẫn nới bạn gửi request tới trên blog của bạn. Nó có đường dẫn là: http://your-blog.com/wp-json/
- Requests: Yêu cầu gửi tới Endpoint
- Responses: Dữ liệu trả về của Endpoin
- Schema: Cấu trúc dữ liệu mà Responses trả về để bạn có thể xác định được dữ liệu cần tìm
- Controller Classes: Trình điều khiển, nơi quản lý, điều hướng Endpoint, Request, Responses
Hướng dẫn sử dụng WordPress REST API
Bây giờ chúng ta sẽ cùng tìm hiểu cách quản lý WordPress thông qua WordPress REST API
Đường dẫn base là:
http://your-blog.com/wp-json
Liệt kê danh sách bài viết (posts)
curl -X OPTIONS -i http://your-blog.com/wp-json/wp/v2/posts
Liệt kê danh sách trang (pages)
curl -X GET -i http://your-blog.com/wp-json/wp/v2/pages
Lấy bài viết theo ID
curl -X GET -i http://your-blog.com/wp-json/wp/v2/posts/<ID>
Tạo mới một bài viết
Để tạo 1 bài viết mới trong WordPress, thông thường bạn phải login vào trang quản trị và viết bài. Tuy nhiên với Rest API bạn không thể login bằng phương pháp thông thường. Vì vậy bạn cần 1 plugin để thực hiện điều đó mới có thể tạo bài viết thông qua REST API. Đó là Basic Auth
Sau khi cài đặt xong chúng ta có thể tạo bài viết với xác thực đơn giản:
curl --user username:password http://your-blog.com/wp-json/
Hoặc tạo bài viết với phần header:
Authorization: Basic dGVzdHVzZXI6MTIzNDU2
Với: dGVzdHVzZXI6MTIzNDU2 là mã base64 của username:password
Update bài viết
curl -X POST --user username:password http://your-blog.com/wp-json/wp/v2/posts/<ID> -d '{"title":"My New Title"}'
Xóa bài viết
curl -X DELETE https://your-blog.com/wp-json/wp/v2/posts/<id>
Kết luận
Bên trên là một số ví dụ về sử dụng WordPress REST API để quản lý bài viết, ngoài ra còn có rất nhiều tính năng khác. Các bạn vui lòng tham khảo tài liệu chính thức ở đây.
Nguồn: vinasupport.com
cảm ơn bài viết của bạn
Cám ơn bài viết rất hay và bổ ích, xin cám ơn