Sebelum mengenal lebih dalam mengenai WordPress Rest API. Hal pertama yang harus diketahu adalah Application Programming Interfaces (APIs). API adalah suatu sistem mengijinkan sistem lain untuk terhubung pada sistem tersebut. Sebagai contoh, ketika suatu website menambahkan ‘Facebook Like’ button pada suatu halaman.  Inilah yang menghubungkannya pada Facebook API. Halaman website tersebut memungkinkan API untuk menerima dan mengirim data.

Adapun RESTatau Respresentational Statement Transfer adalah salah satu jenis API yang dikhususkan untuk Web Service. REST berisi kumpulan instruksi dasar yang memudahkan semua layanan RESTful dapat terhubung sama lain.

Secara singkat, REST API memungkinkan untuk membuat request ke sistem eksternal. Salah satu contohnya adalah Twitter. Anda dapat menggunakan API Twitter untuk request sejumlah tweet dari pengguna tertentu. Kemudian API akan memberikan balasan (kode embed) berupa tweet yang di request. Anda dapat menempatkan balasan tersebut dalam website dengan menggunakan HTML dan CSS. Request yang dikirimkan pada API dapat dijalankan dengan  JavaScript Object Notation (JSON). Bahasa tersebut dirancang khusus untuk mengirim, menerima, dan menyimpan data.

Secara umum, WordPress REST API akan memberikan akses penuh untuk segala fitur WordPress pada framework yang sesuai dengan JSON. Oleh karena itu,sangatlah disarankan untuk terlebih dahulu memahami mengenai JSON.

Cara Kera REST API dan JSON Secara Bersamaan

Untuk dapat mengetahui cara menggunakan REST API, anda dapat mengunjugi Handbook REST API di developer.wordpress.org/rest-api/.

WordPress REST API menyedian API endpoint untuk tipe data WordPress yang memungkinan bagi para developer untuk berinteraksi dalam jarak jauh dengan menggunakan JSON dalam mengirimkan dan menerima objek.

Kata pertama yang difokuskan disini adalah ‘endpoint’. Cara mudah memahaminya adalah endpoint merupakan bagian dari data atau function yang dipanggil dengan menggunakan request terhadap JSON. Secara deafult, WordPress menyediakan menyediakan jumlah endpoint yang banyak untuk dapat digunakan, namun bagi para developer juga dapat membuat custom endpoint.

Untuk dapat melihat endpoint, diperlukan sebuah ‘route’  yang digunakan pada URL.

JSON Request memiliki tiga fungsi utama yang dapat digunakan dengan REST API, yaitu :

  • POST– fungsi ini digunakan untuk mengirimkan data ke API. Hal ini memungkinkan untuk menampilkan informasi baru ke WordPress, seperti menambah user dan postingan, atau mengubah data yang telah ada.

  • GET – fungsi ini digunakan untuk menerima dan mendaftarkan data dari API. Sebagai contoh, anda dapat menggunakan fungsi GET untuk me-return daftar user yang ada pada website atau menyusun postingan blog dalam jangka waktu tertentu.

  • DELETE– seperti namanya, fungsi ini digunakan untuk menghapus data. Hal ini memungkinan untuk menghapus postingan, halaman, user, dan masih banyak lagi.

GET dan POSTterkadang dapat digunakan pada endpoint yang sama untuk melihat hasil yang berbeda. Untuk mencobanya, bukalah website WordPress dan tambahkan /wp-json/wp/v2 diakhir URL. Sebagai contoh, website https://demoidcloudhost.com, maka akan menjadi https://demoidcloudhost.com/wp-json/wp/v2.

Cara Menggunakan REST API

Setelah mempelajari teorinya, kini kami akan memberikan contoh cara menggunakan dasar-dasar REST API. Hal ini dimaksudkan agar menjadi terbiasa mengunakkan REST API untuk melakukan request ke WordPress. Untuk contoh lebih lanjutnya, anda dapat mengeceknya di Official reference library  (https://developer.wordpress.org/rest-api/reference/) dan REST API Resources (https://developer.wordpress.com/docs/api/).

Untuk mempraktikannya, anda membutuhkan command line untuk melukan JSON request. Hal ini memungkinkan untuk melakukan interaksi dengan situs WordPress anda dengan menggunakan antarmuka berbasis teks dan mengirim perintah sederhana. Jika anda tidak begitu berpengalaman dalam menggunakan command line, anda dapat mempelajari perintah dasarnya terlebih dahulu di Codecademy (https://www.codecademy.com/learn/learn-the-command-line). Selain command line, anda juga membutuhkan Secure Shell (SSH) untuk membuat koneksi ke situs anda.

Setelah semua persiapan sudah selesai, anda dapat melakukan hal berikut :

1. Return Post dari website.

Seperti yang telah disebutkan, alasan utama keberadaan API adalah untuk memungkinan aplikasi eksternal dapat mengaskes data. Pada contoh ini, kami akan mengambil satu postingan dari blog DemoIDCloudHost :

$curl https://demoidcloudhost.com/wp-json/wp/v2/posts/1

ID diset 1, maksudnya adalah request akan memberikan postingan paling pertama yang ada di blog. Hal ini akan sangat sulit dilihat karena JSON sangat tidak mudah untuk dibaca. Namun, diantara kode tersebut, anda dapat melihat semua konten dan metadata postingan.

Anda juga dapat menggunakan fungsi ini pada penerapannya. Misal, untuk menampilkan postingan tersebut dengan menggunakan style anda sendiri.

Jika anda ingin me-return setiap posting yang ada, hal yang harus dilakukan adalah menghapus ID diakhir. Bagaimanapun, hal ini seperti anda ingin menampilkan posting dalam jumlah yang ditentukan. Pada contoh ini, akan menampilkan tiga posting terbaru :

$curl https://demoidcloudhost.com/wp-json/wp/v2/posts/?per_page=3

Anda dapat mencobanya dengan menggunakan situs lain atau blog anda sendir.

2. Memperbaharui Posting

Sekarang, kita akan mencoba membuat perubahan pada WordPress dengan menggunakan REST API. Sebelum melakukannya, anda perlu untuk masuk ke situs yang ingin dipakai dan mempunyai hak akses untuk melakukan perubahan. Misal, jika anda menggunakan SSH maka anda perlu untuk terhubung ke server.

Pada contoh ini, kami akan memperbaharui posting yang sudah ada. Pertama, membuat request untuk memperbaharui postingan yang memiliki ID = 1.

$curl -X POST http://demoidcloudhost.com/wp-json/wp/v2/posts/1-d ‘{“title”:”New born of IDCLOUDHOST”}’

Perintah diatas sangatlah menjelaskan. Pada bagian ‘title’ menjelaskan bahwa akan memperbaharui judul posting yang diikuti dengan judul yang baru.

Ada banyak sekali perintah lain yang dapat digunakan untuk mengubah postingan. Sebagai contoh, anda dapat memasukan kategori kedalam posting, menerbitkannya, atau mengubah isi konten.

3. Menghapus Pengguna

Pada contoh kali ini, kami akan menghapus user dari situs. Umumnya, anda harus terhubung terlebih dahulu dan memiliki hak akses untuk dapat mengelola pengguna.

Kemudian, anda dapat melakukan request seperti contoh berikut :

$curl -X DELETE http://demoidcloudhost.com/wp-json/wp/v2/users/52

Perintah ini akan menghapus user berdasarkan ID  tertentu dari website. Anda dapat menambahkan parameter tambahan untuk memindahkan postingan user tersebut ke user yang lain atau menghapus permanen user.

Jika anda ingin lebih memperdalam mengenai REST AP, kami menyarankan untuk menjelajahi REST API Handbook (https://developer.wordpress.org/rest-api/) dan mempelajari kursus JSON (https://www.codecademy.com/courses/javascript-beginner-en-xTAfX/0/1).

Apakah Anda menemukan jawaban?