Công nghệ, Wordpress

Cách sử dụng WordPress JSON API để tạo sửa và xoá bài viết

WordPress là một CMS rất phổ thông . WordPress giúp mọi người tạo một website một cách nhanh chóng.Wordpress phù hợp để build  những website vừa và nhỏ như giới thiệu công ty , xây dựng shop bán hàng, trang thương mại điện tử nhỏ…vv. WordPress có thể nói là vô cùng tiện dụng  , cộng đồng hỗ trợ thì đông . Gần như search plugin hỗ trợ về vấn đề gì cũng có. Nếu bạn là dev thì mọi việc lại càng dễ dàng để vọc vạch với cái CMS  này. Vậy bây giờ mình có nhu cầu làm một app mobile đồng bộ bài viết hoặc sản phẩm với web của mình có được không nhỉ ? Mà muốn làm được việc ấy chúng ta phải có api lấy data từ wordpress để có thể  đổ vào app. Thật hay ho là wordpress có hỗ trợ REST API.

Tuy nhiên cơ chế xác thực của REST API trong wordpress lại chỉ hoạt động trong wordpress . Nếu muốn thực hiện các thao tác như tạo bài viết sửa hoặc xoá bài viết ta phải có auth của nó. Lại thật hay ho là chúng ta lại có vài plugin giúp chúng ta có thể xử lý vụ xác thực này. Theo doc của wordpress  thì có vài plugin được gợi ý  OAuth 1.0a ServerApplication Passwords, và  JSON Web Tokens.

Ok thử nghịch chút với cái web cùi của mình tí nào.Mình sẽ dùng plugin JSON Web Tokens. Plugin này là một plugin mở rộng  dựa trên plugin WP REST API V2 nên chúng ta được khuyến cáo là phải cài cả plugin WP REST API này.

Hãy ủng hộ tôi 1 cốc caffe nếu bạn cảm thấy website có ích.!

Ok rồi sau khi cài vào còn một số cài đặt nhỏ nhỏ nữa phải làm . Các shared hosting thường đặt disabled  HTTP Authorization Header là mặc định.Vậy nên theo hướng dẫn cài plugin  mình phải sửa lại .htaccess thành ntn.


1
2
3
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]
SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1

Rồi !  giờ tiếp tục define constant secret key cho jwt của chúng ta. Vào file wp-config.php và thêm các define sau.


1
define('JWT_AUTH_SECRET_KEY', 'your-top-secret-key');

Để bật hỗ trợ CORs thì mình phải thêm define sau .


1
define('JWT_AUTH_CORS_ENABLE', true);

Vậy là xong giờ tìm cách xử dụng thôi nào.Đầu tiên là phải lấy dc token đã. Plugin cho chúng ta end point để thức hiện việc này.

 


1
http://yourdomain.com/wp-json/jwt-auth/v1/token

Sử dụng method POST để đẩy username và password .

Oke thế là ta nhận dc token rồi thử post gì đó lên xem nào.À để tìm hiểu thêm endpoint thì bạn vào đây xem nhé –>

Ola..! cắn rồi hehe.

Thế là ngon rồi đấy. Để sửa và  xoá thì bạn chỉ cần gọi đến


1
POST /wp/v2/posts/<id>

Với method để update và gọi đến.


1
DELETE /wp/v2/posts/<id>

Với method Delete để xoá bài viết.
Vậy là chúng ta vừa tạo được rest api để có thể tạo sửa và xoá bài viết rồi. Có api chúng ta có thể làm được rất nhiều thứ hay ho. Ví dụ như xây dựng một cms  quản lý tập trung vài chục web site chỉ trên 1 cms .Hoặc  có thể xây dựng những app mobile bằng react native rất tiện . Ok cảm ơn các bạn đã đọc bài viết của mình. Có điều gì sai sót các bạn góp ý giúp mình với nhé. Cảm ơn các bạn.

Hãy ủng hộ tôi 1 cốc caffe nếu bạn cảm thấy website có ích.!

Được gắn thẻ