Una guia d'inici ràpid per a l'API REST de WordPress

 Una guia d'inici ràpid per a l'API REST de WordPress

Patrick Harvey

El web ha crescut força durant l'última dècada i WordPress s'ha quedat lleugerament enrere. Cada cop s'estan introduint més aplicacions al web amb JavaScript, i cada vegada es creen més llocs web dinàmics amb llenguatges com Python i Ruby.

Els desenvolupadors del nucli de WordPress, i fins i tot alguns desenvolupadors professionals de WordPress, senten que la gran dependència de WordPress en PHP i l'ús mínim de JavaScript ha quedat massa obsolet. Això és una cosa que l'API REST de WordPress ha de resoldre.

Vegeu també: Les 12 millors eines d'anàlisi de la competència per al 2023

Això no vol dir que WordPress s'allunyi de PHP, però sí que els desenvolupadors haurien de considerar aprendre JavaScript si volen aprofitar el que té aquesta API. per oferir.

Què és l'API REST de WordPress?

L'API REST no és un concepte nou. De fet, Roy Fielding va definir el terme "transferència d'estat representacional" l'any 2000 quan el va utilitzar per dissenyar HTTP 1.1 i identificadors uniformes de recursos, més coneguts com a "URI".

Probablement ja sabeu que les API són l'estructura de les aplicacions de programari que contenen conjunts d'eines i protocols que els desenvolupadors poden utilitzar per crear aquestes aplicacions. L'API REST és similar a aquesta, excepte que realitza les seves sol·licituds i rep les seves respostes mitjançant el protocol HTTP.

Les API habituals solen utilitzar PHP, Python i Ruby per crear aplicacions. Podeu utilitzar altres idiomes, però aquests són els més populars. API REST, a través dellocs web i blocs senzills.

Aprendre JavaScript hauria de ser una prioritat en aquests moments, com s'ha dit abans, ja que aquest és el llenguatge que els fabricants de WordPress volen que els desenvolupadors incorporin més sovint als projectes de WordPress.

També hauríeu de revisar el manual de l'API REST de WordPress per entendre millor la visió de WordPress sobre l'API REST. La secció Ús de l'API REST conté guies sobre com utilitzar els paràmetres globals, la paginació, la incrustació i l'enllaç i l'autenticació, que són conceptes clau d'aquesta API.

Un cop hàgiu assolit una bona comprensió de tot. d'això, podeu passar per la secció Extensió de l'API REST per saber com ampliar l'API en profunditat. Aprendràs més sobre com afegir punts finals personalitzats i també aprendràs a utilitzar els tipus de contingut personalitzats i a modificar les respostes.

l'ús del protocol HTTP, faciliten l'ús d'altres llenguatges de programació, com ara JavaScript.

API REST de WordPress

Ja he explicat com l'API REST de WordPress consisteix més en apropar WordPress a on es troba la resta del web i menys per allunyar-se de PHP. Es tracta de facilitar als desenvolupadors l'ús d'idiomes com JSON i JavaScript perquè WordPress pugui convertir-se en una plataforma completa capaç d'utilitzar-se per crear molt més que llocs web i blocs tradicionals.

Vegeu també: Les 11 millors eines de programari de seguiment de la classificació de paraules clau per al 2023 (comparació)

Aquí teniu l'explicació de WordPress sobre la incorporació de JSON. a l'API REST de WordPress:

L'API REST de WordPress proporciona punts finals d'API per a tipus de dades de WordPress que permeten als desenvolupadors interactuar amb llocs de forma remota enviant i rebent objectes JSON (JavaScript Object Notation). JSON és un format de dades estàndard obert que és lleuger i llegible pels humans, i sembla que els objectes ho fan a JavaScript; d'aquí el nom. Quan envieu contingut o feu una sol·licitud a l'API, la resposta es retornarà en JSON. Això permet als desenvolupadors crear, llegir i actualitzar contingut de WordPress des de JavaScript del costat del client o des d'aplicacions externes, fins i tot aquelles escrites en idiomes més enllà de PHP.

Està dissenyat bàsicament per salvar la bretxa entre el nucli de WordPress PHP. està basat en JavaScript i moltes aplicacions web utilitzen avui dia. La infraestructura de l'API REST de WordPress es va afegir al nucli de WordPressa la versió 4.4 (nom en clau "Clifford") el desembre de 2015. Necessites un connector per utilitzar l'API REST en aquell moment. Tanmateix, la resta d'aquesta API, els punts finals de contingut per ser exactes, es va afegir al nucli de WordPress a la versió 4.7 (nom en clau "Vaughan") el desembre de 2016, negant la necessitat del connector de l'API WP REST.

Com. funciona l'API REST de WordPress

Per entendre com funciona l'API REST de WordPress, heu d'entendre com funcionen les sol·licituds i les respostes HTTP. Quan introduïu un URL a la barra d'adreces d'un navegador, això és una sol·licitud. Quan el servidor mostra el lloc web o l'aplicació d'aquest URL, això és una resposta.

Veureu diversos tipus de sol·licituds o "mètodes HTTP" quan comenceu a utilitzar l'API REST de WordPress. Aquests són els quatre tipus principals de mètodes HTTP que utilitza el web:

  • GET : s'utilitza per recuperar dades del servidor
  • POST – S'utilitza per enviar dades al servidor
  • PUT – S'utilitza per canviar o actualitzar dades al servidor
  • DELETE – S'utilitza per eliminar dades de el servidor

Tenint en compte aquestes definicions senzilles, introduir un URL en un navegador és una sol·licitud GET. Introduir la vostra informació d'inici de sessió per a un lloc web és una sol·licitud POST. Canviar la contrasenya actual per una de nova és una sol·licitud PUT, mentre que cancel·lar el compte és una sol·licitud DELETE.

Els termes addicionals que notareu són "rutes" i "punts finals". Una ruta és normalment l'URL ouna part de l'URL al qual esteu intentant accedir mentre que un punt final sol ser la resposta que rebeu del servidor.

Quan fonts externes envien sol·licituds HTTP al servidor que allotja el vostre lloc de WordPress, l'API REST exposa les vostres dades. de manera segura responent a aquestes peticions amb una arquitectura comuna i el seu propi conjunt de protocols.

Això permet que el contingut de WordPress, com ara publicacions, pàgines i comentaris, es processi com a dades en brut. D'aquí a un minut tindrem una visió d'això. El punt general d'això és que us permetrà fer canvis al contingut del vostre lloc sense haver d'accedir a l'àrea d'administració de WordPress. Així és com podeu fer canvis al vostre lloc mitjançant JSON, les respostes del qual ofereixen als desenvolupadors diverses maneres diferents d'interaccionar amb els seus llocs.

Ens embrutem una mica les mans per veure com funciona tot això.

Ús de l'API REST de WordPress

Anem a veure com utilitzar l'API REST de WordPress, però, malauradament, primer hem de repassar alguns conceptes clau. així que tot té sentit. Aquests són els conceptes clau que conformen aquesta API:

  • Rutes i amp; Punts finals
  • Sol·licituds
  • Respostes
  • Esquema
  • Classes de controladors

Anem-hi.

Rutes & Punts finals

La definició tècnica d'una ruta és un URL que es pot assignar mitjançant diferents mètodes HTTP. El mapeig entre una ruta i un mètode HTTP s'anomena an"punt final". Podeu accedir a l'API REST de WordPress i veure quines rutes i punts finals estan disponibles per al vostre lloc afegint la ruta "/wp-json/" al final de l'URL.

Podeu veure-ho a WordPress.org. visitant //www.wordpress.org/wp-json/:

Instal·leu una extensió anomenada JSON Viewer per a Chrome (visualitzador JSON per a Firefox disponible aquí) per netejar aquest embolic:

Si no feu servir bons enllaços permanents, feu servir “?rest_route=" en lloc de “wp-json”. De qualsevol manera, el que esteu veient aquí és un exemple de ruta i punt final. "/wp-json/" i "/?rest_route=/" són rutes. Us permeten accedir a l'API REST de WordPress mitjançant el mètode GET HTTP. L'API REST de WordPress que se us mostra, o les dades, si voleu, és un punt final que se'ns ofereix mitjançant una resposta JSON.

Sol·licituds

L'API REST de WordPress processa les sol·licituds amb una classe anomenada WP_REST_Request. . És una classe principal a la infraestructura de l'API REST de WordPress. S'utilitza per emmagatzemar i recuperar informació de totes les sol·licituds que feu.

Podeu enviar sol·licituds de manera remota mitjançant els mètodes HTTP que hem revisat o podeu fer-les internament com ho farieu normalment mitjançant PHP.

Respostes

Les respostes es processen amb la classe WP_REST_Response. Una resposta són les dades que rebeu d'una sol·licitud, tal com s'ha indicat anteriorment. L'API utilitza aquesta classe per retornar les dades enviades des dels punts finals. També pot tornarerrors.

Esquema

L'esquema és un concepte dins de l'API REST de WordPress que serveix per a diversos propòsits. L'esquema de l'API defineix les estructures de dades que poden utilitzar els punts finals i conté una llista de les propietats que l'API REST de WordPress pot retornar. També conté els paràmetres que l'API pot acceptar i li proporciona seguretat mitjançant la validació de les sol·licituds que rep l'API.

Classes de controladors

L'API REST de WordPress registra rutes i punts finals, gestiona les sol·licituds i utilitza Schema. per definir les dades i les propietats que pot utilitzar i genera respostes API a més de tot això. L'API, i tu com a desenvolupador, necessites una manera de gestionar totes aquestes parts mòbils. Per a això serveixen les classes de controlador. Us permeten reunir tots aquests elements i organitzar-los en un sol lloc.

Utilitzar l'API REST de WordPress per accedir al vostre contingut a través dels punts finals

Una ruta és l'URL que feu servir per accedir a un punt final i un punt final és la resposta que rebeu del servidor. Si voleu obtenir les publicacions del vostre lloc a través de l'API REST de WordPress, utilitzeu la ruta "/wp/v2/posts/". WordPress explica que "/wp-json/" no s'inclou en aquestes rutes més llargues perquè és el "camí base per a la pròpia API". L'URL final és "example.com/wp-json/wp/v2/posts".

Si voleu accedir a una publicació específica mitjançant l'API, només cal que afegiu l'ID de la publicació al final de l'URL, de manera que es veu així:“example.com/wp-json/wp/v2/posts/123”

Si voleu cercar publicacions que utilitzen una frase o paraula clau específica, utilitzeu aquesta ruta: “/wp/v2/posts? =cerca[ insereix la paraula clau aquí ]” de manera que l'URL tingui aquest aspecte: “example.com/wp-json/wp/v2/posts?search[ insereix la paraula clau aquí ].

Si voleu accedir al perfil d'un usuari específic mitjançant l'API, afegiu “/users/” a la ruta així com l'ID d'usuari d'aquest usuari. L'URL té aquest aspecte: "example.com/wp-json/wp/v2/users/2". De la mateixa manera, si voleu accedir als usuaris d'un lloc, deixeu anar l'identificador perquè l'URL tingui aquest aspecte: "example.com/wp-json/wp/v2/users/".

Podeu veure més punts finals aquí .

Ampliació de l'API REST

Ens ometem uns quants passos i aprendrem a utilitzar les propietats de l'API REST per ampliar-la. Hauríeu d'aprendre coses com ara els paràmetres globals, la paginació, l'enllaç i la inserció i l'autenticació abans de fer-ho, però anem a avançar per als propòsits d'aquesta guia d'inici ràpid.

Aquí teniu algunes coses que podeu fer. Aconseguiu-ho ampliant l'API REST:

  • Afegiu punts finals personalitzats
  • Creeu rutes per a tipus de publicacions personalitzades i taxonomies personalitzades
  • Modifica les respostes

Si sou un desenvolupador experimentat, probablement ja esteu familiaritzat amb els conceptes necessaris per afegir un punt final personalitzat a l'API REST. Només és qüestió d'aprendre a connectar els dos.

Començareu creant una funcióaixò pot ser senzill o complicat depenent de la sofisticació de la funcionalitat que intenteu afegir a l'API REST. Aquí teniu la funció senzilla que proporciona WordPress al seu manual, una funció dissenyada per agafar els títols de les darreres publicacions del vostre lloc per autor:

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

Després, haureu de registrar una ruta per posar aquesta funció a disposició dels usuaris. API utilitzant una altra funció anomenada register_rest_route. Aquesta és la funció que fa servir WordPress per registrar la ruta per a la funció anterior:

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

Aquí estan passant un parell de coses. En primer lloc, hi ha tres propietats que passen per aquesta funció. Són l'espai de noms (“myplugin/v1”), la ruta que hem de registrar (“my_awesome_func”) i les opcions que volem utilitzar (“author/(?P\d+)”). La funció register_rest_route també s'està cridant a una funció de devolució de trucada anomenada "rest_api_init". Això redueix la quantitat de treball innecessari que es realitza quan l'API no s'utilitza.

Com explica WordPress, aquesta ruta està dissenyada per fer coincidir qualsevol cosa amb "/author/{id}" on "{id} }” és un nombre enter. Aquest és l'URL que visitaríeu per utilitzar aquesta ruta: //example.com/wp-json/myplugin/v1/author/(?P\d+) . Aquesta ruta específica utilitza un punt final, però les rutes poden tenir diversos punts finals. Podeu veure que també hem definit el mètode HTTP que utilitzaria aquest punt final.

Altres conceptes que necessitareu

Hi ha algunsconceptes addicionals que haureu d'aprendre si voleu ampliar l'API REST, sempre que encara no els estigueu familiaritzat. Hem utilitzat un espai de noms a la funció anterior, i és per això que la primera part de l'URL anterior és "myplugin/v1". S'utilitzen com a prefixos per evitar enfrontaments amb rutes personalitzades.

Els arguments són un altre concepte que hauríeu de conèixer, ja que us permeten executar la desinfecció i la validació registrant-los quan registreu rutes. També hauríeu de familiaritzar-vos amb els valors de retorn, ja que això és el que utilitzareu per definir el tipus de resposta que rebeu del servidor. Fins i tot podeu utilitzar-los per retornar errors, com ara un error 404 que es mostra si un autor no ha publicat cap publicació.

Les devolucions de trucada són un altre concepte que hauríeu de conèixer, com ara funcions conegudes com a devolució de permisos que comproven si o no, un usuari és capaç de realitzar una acció abans que la funció intenti cridar la devolució de trucada real. Finalment, familiaritzar-se amb les classes internes i els patrons del controlador us ajudarà a gestionar tots els aspectes dels punts finals que creeu.

Pensaments finals i amp; on anar des d'aquí

Entendre els conceptes clau de l'API REST de WordPress i aprendre a utilitzar-la i ampliar-la pot ser aclaparador, però els creadors de WordPress estan bastant segurs que serà la força del CMS d'alguna manera ha de créixer molt més enllà de les seves capacitats com a plataforma per construir

?>

Patrick Harvey

Patrick Harvey és un escriptor experimentat i màrqueting digital amb més de 10 anys d'experiència en el sector. Té un ampli coneixement de diversos temes com ara blogs, xarxes socials, comerç electrònic i WordPress. La seva passió per escriure i ajudar la gent a tenir èxit en línia l'ha portat a crear publicacions perspicaces i atractives que aportin valor al seu públic. Com a usuari competent de WordPress, Patrick està familiaritzat amb els detalls de la creació de llocs web d'èxit, i fa servir aquest coneixement per ajudar tant les empreses com les persones a establir la seva presència en línia. Amb un gran ull pels detalls i un compromís inquebrantable amb l'excel·lència, Patrick es dedica a oferir als seus lectors les últimes tendències i consells en la indústria del màrqueting digital. Quan no està fent blocs, es pot trobar a Patrick explorant llocs nous, llegint llibres o jugant a bàsquet.