Isang Mabilis na Gabay sa Pagsisimula Para sa WordPress REST API

 Isang Mabilis na Gabay sa Pagsisimula Para sa WordPress REST API

Patrick Harvey

Medyo lumaki ang web sa nakalipas na dekada, at medyo nahuli ang WordPress. Parami nang parami ang mga application na dinadala sa web gamit ang JavaScript, at parami nang parami ang mga dynamic na website na ginagawa gamit ang mga wika tulad ng Python at Ruby.

Nararamdaman ng mga developer ng WordPress core, at kahit ilang propesyonal na developer ng WordPress. na ang matinding pag-asa ng WordPress sa PHP at kaunting paggamit ng JavaScript ay naging napakaluma na. Ito ay isang bagay na nais lutasin ng WordPress REST API.

Hindi ito nangangahulugan na ang WordPress ay lumalayo sa PHP, ngunit nangangahulugan ito na dapat isaalang-alang ng mga developer ang pag-aaral ng JavaScript kung gusto nilang samantalahin kung ano ang mayroon ang API na ito iaalok.

Ano ang WordPress REST API?

Ang REST API ay hindi isang bagong konsepto. Sa katunayan, tinukoy ni Roy Fielding ang terminong “representational state transfer” noong taong 2000 noong ginamit niya ito para magdisenyo ng HTTP 1.1 at Uniform Resource Identifier, na mas kilala bilang “URI.”

Marahil alam mo na ang mga API ay ang istruktura ng mga software application na naglalaman ng mga hanay ng mga tool at protocol na magagamit ng mga developer para buuin ang mga application na iyon. Ang REST API ay katulad doon maliban kung ginagawa nito ang mga kahilingan nito at natatanggap ang mga tugon nito sa pamamagitan ng HTTP protocol.

Karaniwang gumagamit ng PHP, Python at Ruby ang mga regular na API upang bumuo ng mga application. Maaari kang gumamit ng iba pang mga wika, ngunit ito ang pinakasikat. REST API, sa pamamagitan ngmga simpleng website at blog.

Ang pag-aaral ng JavaScript ay dapat na isang pangunahing priyoridad sa ngayon, gaya ng nabanggit dati, dahil ito ang wikang nais ng mga gumagawa ng WordPress na isama ng mga developer nang mas madalas sa mga proyekto ng WordPress.

Dapat mo ring dumaan sa handbook ng WordPress REST API upang magkaroon ng mas mahusay na pag-unawa sa pananaw ng WordPress sa REST API. Ang seksyong Paggamit ng REST API ay naglalaman ng mga gabay sa kung paano gumamit ng mga pandaigdigang parameter, pagination, pag-embed at pag-link, at pagpapatotoo, na lahat ay mga pangunahing konsepto ng API na ito.

Sa sandaling nakakuha ka ng isang magandang pag-unawa sa lahat sa mga iyon, maaari kang pumunta sa seksyong Pagpapalawak ng REST API upang matutunan kung paano palawakin ang API nang mas malalim. Matututunan mo ang higit pa tungkol sa pagdaragdag ng mga custom na endpoint at matututunan din kung paano gumamit ng mga custom na uri ng nilalaman at baguhin ang mga tugon.

ang paggamit ng HTTP protocol, gawing mas madali ang paggamit ng iba pang mga programming language, gaya ng JavaScript.

WordPress REST API

Naipaliwanag ko na kung paano ang WordPress REST API ay higit pa tungkol sa paglipat ng WordPress palapit sa kung saan ang natitirang bahagi ng web ay at mas kaunti tungkol sa paglayo sa PHP. Ito ay tungkol sa pagpapadali para sa mga developer na gumamit ng mga wika tulad ng JSON at JavaScript upang ang WordPress ay maging isang ganap na platform na may kakayahang magamit upang bumuo ng higit pa kaysa sa tradisyonal na mga website at blog.

Narito ang paliwanag ng WordPress sa pagsasama ng JSON sa WordPress REST API:

Ang WordPress REST API ay nagbibigay ng mga endpoint ng API para sa mga uri ng data ng WordPress na nagpapahintulot sa mga developer na makipag-ugnayan sa mga site nang malayuan sa pamamagitan ng pagpapadala at pagtanggap ng mga object ng JSON (JavaScript Object Notation). Ang JSON ay isang bukas na karaniwang format ng data na magaan at nababasa ng tao, at mukhang ginagawa ng Objects sa JavaScript; kaya ang pangalan. Kapag nagpadala ka ng content o humiling sa API, ibabalik ang tugon sa JSON. Binibigyang-daan nito ang mga developer na lumikha, magbasa at mag-update ng nilalaman ng WordPress mula sa client-side na JavaScript o mula sa mga panlabas na application, kahit na ang mga nakasulat sa mga wikang lampas sa PHP.

Ito ay mahalagang idinisenyo upang tulay ang agwat sa pagitan ng PHP WordPress core ay binuo at ang JavaScript na ginagamit ng maraming web application ngayon. Ang imprastraktura para sa WordPress REST API ay idinagdag sa WordPress coresa bersyon 4.4 (codename "Clifford") noong Disyembre 2015. Kailangan mo ng plugin upang magamit ang REST API sa oras na iyon. Gayunpaman, ang natitira sa API na ito, ang mga endpoint ng nilalaman upang maging eksakto, ay idinagdag sa WordPress core sa bersyon 4.7 (codename "Vaughan") noong Disyembre 2016, na binabalewala ang pangangailangan para sa WP REST API plugin.

Tingnan din: 9 Pinakamahusay na Alternatibo ng SendOwl Para sa 2023: Magbenta ng Mga Digital na Produkto nang Madali

Paano gumagana ang WordPress REST API

Upang maunawaan kung paano gumagana ang WordPress REST API, kailangan mong maunawaan kung paano gumagana ang mga kahilingan at tugon ng HTTP. Kapag naglagay ka ng URL sa address bar ng isang browser, iyon ay isang kahilingan. Kapag ipinakita ng server ang website o application para sa URL na iyon, isa itong tugon.

Makakakita ka ng ilang iba't ibang uri ng mga kahilingan o "mga pamamaraan ng HTTP" kapag sinimulan mong gamitin ang WordPress REST API. Narito ang apat na pangunahing uri ng mga pamamaraan ng HTTP na ginagamit ng web:

  • GET – Ginagamit upang kunin ang data mula sa server
  • POST – Ginagamit para magpadala ng data sa server
  • PUT – Ginagamit para baguhin o i-update ang data sa server
  • DELETE – Ginagamit para alisin ang data mula sa ang server

Sa mga simpleng kahulugang iyon na nasa isip, ang pagpasok ng URL sa isang browser ay isang kahilingan sa GET. Ang paglalagay ng iyong impormasyon sa pag-log in para sa isang website ay isang kahilingan sa POST. Ang pagpapalit ng iyong kasalukuyang password sa isang bago ay isang kahilingan sa PUT habang ang pagwawakas sa iyong account ay isang hiling na DELETE.

Ang mga karagdagang terminong mapapansin mo ay "mga ruta" at "mga endpoint." Ang isang ruta ay karaniwang ang URL oisang bahagi ng URL na sinusubukan mong i-access habang ang isang endpoint ay karaniwang ang tugon na natatanggap mo mula sa server.

Kapag ang mga panlabas na mapagkukunan ay nagpadala ng mga kahilingan sa HTTP sa server na nagho-host ng iyong WordPress site, ang REST API ay naglalantad sa iyong data sa isang secure na paraan sa pamamagitan ng pagtugon sa mga kahilingang iyon gamit ang isang karaniwang arkitektura at sarili nitong hanay ng mga protocol.

Pinapayagan nito ang nilalaman ng WordPress, gaya ng mga post, page, at komento, na maproseso bilang raw data. Masusulyapan natin ito sa isang minuto. Ang pangkalahatang punto nito ay payagan kang gumawa ng mga pagbabago sa nilalaman ng iyong site nang hindi kinakailangang i-access ang WordPress admin area. Ito ay kung paano ka makakagawa ng mga pagbabago sa iyong site gamit ang JSON na ang mga tugon ay nagbibigay sa mga developer ng ilang iba't ibang paraan upang makipag-ugnayan sa kanilang mga site.

Hayaan ang ating mga kamay nang kaunti upang makita kung paano ito gumagana.

Paggamit ng WordPress REST API

Aalamin natin kung paano aktwal gamitin ang WordPress REST API, ngunit sa kasamaang-palad, may ilang pangunahing konsepto na kailangan muna nating balikan kaya lahat ng ito ay may katuturan. Narito ang mga pangunahing konsepto na bumubuo sa API na ito:

  • Mga Ruta & Mga Endpoint
  • Mga Kahilingan
  • Mga Tugon
  • Schema
  • Mga Klase ng Kontroler

Tara na.

Mga Ruta & Mga Endpoint

Ang teknikal na kahulugan ng isang ruta ay isang URL na maaaring imapa sa pamamagitan ng iba't ibang pamamaraan ng HTTP. Ang pagmamapa sa pagitan ng isang ruta at isang pamamaraan ng HTTP ay tinatawag na an“endpoint.” Maa-access mo ang WordPress REST API at makita kung aling mga ruta at endpoint ang available para sa iyong site sa pamamagitan ng pagdaragdag ng rutang “/wp-json/” sa dulo ng iyong URL.

Makikita mo ito sa WordPress.org sa pamamagitan ng pagbisita sa //www.wordpress.org/wp-json/:

Mag-install ng extension na tinatawag na JSON Viewer para sa Chrome (Available dito ang viewer ng JSON para sa Firefox) upang linisin ang gulo na ito:

Kung hindi ka gumagamit ng magagandang permalink, gamitin ang “?rest_route=” sa halip na “wp-json”. Sa alinmang paraan, ang nakikita mo dito ay isang halimbawa ng isang ruta at isang endpoint. Ang “/wp-json/” at “/?rest_route=/” ay mga ruta. Pinapayagan ka nitong i-access ang WordPress REST API sa pamamagitan ng GET HTTP method. Ang WordPress REST API na ipinapakita sa iyo, o ang data kung gugustuhin mo, ay isang endpoint na inihatid sa amin sa pamamagitan ng isang JSON na tugon.

Mga Kahilingan

Ang WordPress REST API ay nagpoproseso ng mga kahilingan sa isang klase na pinangalanang WP_REST_Request . Isa itong pangunahing klase sa imprastraktura ng WordPress REST API. Ito ay ginagamit upang mag-imbak at kumuha ng impormasyon para sa lahat ng mga kahilingang gagawin mo.

Maaari kang magpadala ng mga kahilingan nang malayuan gamit ang mga pamamaraan ng HTTP na aming binanggit o maaari mong gawin ang mga ito nang panloob gaya ng karaniwan mong ginagawa sa pamamagitan ng PHP.

Mga Tugon

Ang mga tugon ay pinoproseso gamit ang klase ng WP_REST_Response. Ang tugon ay ang data na natatanggap mo mula sa isang kahilingan, gaya ng nakasaad dati. Ginagamit ng API ang klase na ito upang ibalik ang data na ipinadala mula sa mga endpoint. Maaari din itong bumalikmga error.

Schema

Ang Schema ay isang konsepto sa loob ng WordPress REST API na nagsisilbi sa iba't ibang layunin. Tinutukoy ng API schema ang mga istruktura ng data na maaaring gamitin ng mga endpoint, at naglalaman ito ng listahan ng mga katangian na maibabalik ng WordPress REST API. Naglalaman din ito ng mga parameter na matatanggap ng API at nagbibigay ng seguridad para dito sa pamamagitan ng pagpapatunay sa mga kahilingang natatanggap ng API.

Mga Klase ng Kontroler

Nagrerehistro ang WordPress REST API ng mga ruta at endpoint, pinangangasiwaan ang mga kahilingan, gumagamit ng Schema upang tukuyin ang data at mga katangian na magagamit nito, at bumubuo ng mga tugon ng API sa itaas ng lahat ng iyon. Ang API, at ikaw bilang developer, ay nangangailangan ng paraan upang pamahalaan ang lahat ng gumagalaw na bahaging ito. Iyan ang para sa mga klase ng controller. Binibigyang-daan ka nitong tipunin ang lahat ng elementong ito at ayusin ang mga ito sa iisang lugar.

Paggamit ng WordPress REST API para ma-access ang iyong content sa pamamagitan ng mga endpoint

Ang ruta ay ang URL na ginagamit mo para ma-access ang isang endpoint, at ang endpoint ay ang tugon na natatanggap mo mula sa server. Kung gusto mong makuha ang mga post ng iyong site sa pamamagitan ng WordPress REST API, gamitin ang rutang “/wp/v2/posts/”. Ipinaliwanag ng WordPress na ang "/wp-json/" ay hindi kasama sa mga mas mahabang rutang ito dahil ito ang "base path para sa API mismo." Ang panghuling URL ay “example.com/wp-json/wp/v2/posts”.

Kung gusto mong mag-access ng isang partikular na post sa pamamagitan ng API, idagdag lang ang ID ng post sa dulo ng URL upang parang ganito:“example.com/wp-json/wp/v2/posts/123”

Kung gusto mong maghanap ng mga post na gumagamit ng partikular na parirala o keyword, gamitin ang rutang ito: “/wp/v2/posts? =search[ insert keyword here ]” para ganito ang URL: “example.com/wp-json/wp/v2/posts?search[ insert keyword here ].

Kung gusto mong i-access ang profile ng isang partikular na user sa pamamagitan ng API, idagdag ang “/users/” sa ruta pati na rin ang user ID ng user na iyon. Ganito ang hitsura ng URL: “example.com/wp-json/wp/v2/users/2”. Katulad nito, kung gusto mong i-access ang mga user ng isang site, i-drop ang ID para magmukhang ganito ang URL: “example.com/wp-json/wp/v2/users/”.

Maaari kang tumingin ng higit pang mga endpoint dito .

Pagpapalawak ng REST API

Lalaktawan namin ang ilang hakbang at matutunan kung paano gamitin ang mga katangian ng REST API upang palawigin ito. Dapat mong matutunan ang tungkol sa mga bagay tulad ng mga pandaigdigang parameter, pagination, pag-link at pag-embed, at pagpapatotoo bago ito gawin, ngunit lalaktawan namin ang mga layunin ng mabilisang gabay na ito.

Narito ang ilang bagay na maaari mong gawin. magawa sa pamamagitan ng pagpapalawak ng REST API:

Tingnan din: Instagram Hashtags: Ang Kumpletong Gabay
  • Magdagdag ng Mga Custom na Endpoint
  • Gumawa ng Mga Ruta para sa Mga Custom na Uri ng Post at Custom na Taxonomy
  • Baguhin ang Mga Tugon

Kung isa kang karanasang developer, malamang na pamilyar ka na sa mga konseptong kinakailangan para magdagdag ng custom na endpoint sa REST API. Ito ay isang bagay lamang ng pag-aaral kung paano ikonekta ang dalawa.

Magsisimula ka sa paggawa ng isang functionna maaaring maging simple o kumplikado depende sa pagiging sopistikado ng functionality na sinusubukan mong idagdag sa REST API. Narito ang simpleng function na ibinibigay ng WordPress sa kanilang handbook, isang function na idinisenyo upang kunin ang mga pamagat ng mga pinakabagong post ng iyong site ng may-akda:

 $data['id'], ) ); if ( empty( $posts ) ) { return null; } return $posts[0]->post_title; } 

Pagkatapos nito, kakailanganin mong magrehistro ng ruta upang gawing available ang function na ito sa API sa pamamagitan ng paggamit ng isa pang function na tinatawag na register_rest_route. Narito ang function na ginagamit ng WordPress upang irehistro ang ruta para sa nakaraang function:

 'GET', 'callback' => 'my_awesome_func', ) ); } );

May ilang bagay na nangyayari dito. Una, mayroong tatlong mga katangian na dumadaan sa pagpapaandar na ito. Ang mga ito ay ang namespace (“myplugin/v1”), ang rutang kailangan naming irehistro (“my_awesome_func”) at ang mga opsyon na gusto naming gamitin (“may-akda/(?P\d+)”). Ang register_rest_route function ay tinatawag din sa isang callback function na tinatawag na "rest_api_init". Binabawasan nito ang dami ng hindi kinakailangang gawaing ginagawa kapag hindi ginagamit ang API.

Tulad ng paliwanag ng WordPress, ang rutang ito ay idinisenyo upang tumugma sa anumang bagay sa “/author/{id}” kung saan ang “{id }” ay isang integer. Ito ang URL na bibisitahin mo para magamit ang rutang ito – //example.com/wp-json/myplugin/v1/author/(?P\d+) . Gumagamit ang partikular na rutang ito ng isang endpoint, ngunit may kakayahang magkaroon ng maraming endpoint ang mga ruta. Makikita mo na tinukoy din namin ang paraan ng HTTP na gagamitin ng endpoint na ito.

Iba pang mga konsepto na kakailanganin mo

May ilangmga karagdagang konsepto na kakailanganin mong matutunan kung gusto mong palawigin ang REST API, basta't hindi ka pa pamilyar sa kanila. Gumamit kami ng namespace sa function sa itaas, kaya naman ang unang bahagi ng URL sa itaas ay “myplugin/v1”. Ginagamit ang mga ito bilang mga prefix para maiwasan ang mga pag-aaway sa mga custom na ruta.

Ang mga argumento ay isa pang konsepto na dapat mong pamilyar dahil pinapayagan ka nitong magpatakbo ng sanitization at validation sa pamamagitan ng pagrehistro sa mga ito kapag nagparehistro ka ng mga ruta. Dapat mo ring maging pamilyar sa mga halaga ng pagbabalik dahil ito ang iyong gagamitin upang tukuyin ang uri ng tugon na natatanggap mo mula sa server. Maaari mo ring gamitin ang mga ito upang ibalik ang mga error, tulad ng isang 404 na error na ipinapakita kung ang isang may-akda ay hindi nag-publish ng anumang mga post.

Ang mga callback ay isa pang konsepto na dapat mong malaman, tulad ng mga function na kilala bilang mga callback ng pahintulot na nagsusuri kung o hindi magagawa ng isang user ang isang aksyon bago ang function na subukang tawagan ang aktwal na callback. Panghuli, ang pag-pamilyar sa iyong sarili sa mga panloob na klase at mga pattern ng controller ay makakatulong sa iyong pamahalaan ang bawat aspeto ng mga endpoint na gagawin mo.

Mga pangwakas na kaisipan & kung saan pupunta mula dito

Ang pag-unawa sa mga pangunahing konsepto ng WordPress REST API at pag-aaral kung paano gamitin at palawigin ito ay maaaring napakalaki, ngunit ang mga gumagawa ng WordPress ay medyo kumpiyansa na ito ang magiging puwersa ng CMS sa mga paraan kailangan nitong lumago nang higit pa sa mga kakayahan nito bilang isang plataporma upang bumuo

?>

Patrick Harvey

Si Patrick Harvey ay isang batikang manunulat at digital marketer na may higit sa 10 taong karanasan sa industriya. Siya ay may malawak na kaalaman sa iba't ibang paksa tulad ng blogging, social media, ecommerce, at WordPress. Ang kanyang hilig sa pagsusulat at pagtulong sa mga tao na magtagumpay online ang nagtulak sa kanya na gumawa ng mga insightful at nakakaengganyong post na nagbibigay ng halaga sa kanyang audience. Bilang isang bihasang gumagamit ng WordPress, pamilyar si Patrick sa mga pasikot-sikot ng pagbuo ng mga matagumpay na website, at ginagamit niya ang kaalamang ito upang matulungan ang mga negosyo at indibidwal na maitaguyod ang kanilang online presence. Sa isang matalas na mata para sa detalye at isang hindi natitinag na pangako sa kahusayan, nakatuon si Patrick sa pagbibigay sa kanyang mga mambabasa ng pinakabagong mga uso at payo sa industriya ng digital marketing. Kapag hindi siya nagba-blog, makikita si Patrick na nag-explore ng mga bagong lugar, nagbabasa ng mga libro, o naglalaro ng basketball.