Saltar al contenido

WordPress Rest API ➤ Qué es y cómo empezar a usarlo

WordPress Rest API ➤ Qué es y cómo empezar a usarlo
5 (100%) 3 vote[s]

Si has pasado algún tiempo en la comunidad de WordPress en los últimos años, lo más probable es que hayas oído hacer referencia a la nueva REST API.

Sin embargo, a menos que seas un desarrollador experimentado, es posible que no tengas ni idea de lo que es la REST API de WordPress.

Aunque los detalles técnicos son un poco complejos, los conceptos básicos detrás de esta característica son bastante fáciles de entender.

La nueva API ayuda a expandir lo que WordPress, como plataforma, puede hacer.

Además, la REST API hace que sea más fácil que nunca para los desarrolladores conectar WordPress con otros sitios y aplicaciones.

En esta guía integral, te guiaré a través de todos los aspectos básicos que necesitas conocer.

Explicaremos qué son las APIs en general, y qué son las REST APIs (y la versión específica de WordPress) en particular.

Finalmente, hablaré sobre cómo tu mismo puedes empezar a usar la REST API de WordPress.

Introducción a las Interfaces de Programación de Aplicaciones (API)

Antes de profundizar en la REST API específicamente, retrocedamos un poco ya que, para entender este concepto, es clave tener primero una idea básica de lo que son las APIs en general.

En su nivel más fundamental, una API, o Interfaz de Programación de Aplicaciones, permite que dos aplicaciones se comuniquen entre sí.

Por ejemplo, cuando visitas un sitio web, tu navegador envía una petición al servidor donde se encuentra ese sitio. La API de ese servidor es la que recibe la solicitud de tu navegador, la interpreta y devuelve todos los datos necesarios para mostrar tu sitio.

Por supuesto, en un sentido técnico, hay mucho más sobre la forma en que funcionan las APIs. Sin embargo, aquí voy a centrarme en lo que probablemente sea más importante para ti: las aplicaciones prácticas.

Las APIs han estado recibiendo mucha atención y visibilidad, porque muchas compañías han comenzado a empaquetarlas y ofrecerlas como productos que se pueden utilizar.

En otras palabras, los desarrolladores de una empresa como Google recopilarán algunas partes del código de tu aplicación y lo pondrán a disposición del público.

De este modo, otros desarrolladores pueden utilizar la API como herramienta para ayudar a sus propios sitios a conectarse a Google y aprovechar sus funciones.

Por ejemplo, puedes utilizar la API de Google Maps para colocar en tu sitio un mapa totalmente funcional que se beneficie de todos los datos y funciones relevantes de Google.

Esto te ahorra tener que codificar un mapa y recopilar todos esos datos tu mismo.

Lo mismo se aplica a una amplia gama de sitios y aplicaciones.

A medida que los sitios web y la funcionalidad en la que se basan se vuelven más complejos, herramientas como las API se vuelven cruciales.

Permiten a los desarrolladores construir sobre la funcionalidad existente, haciendo posible simplemente «conectar» nuevas características a tu sitio web.

A su vez, el sitio que posee la API se beneficia del aumento de la exposición y del tráfico.

Las reglas fundamentales de una API REST (Representational State Transfer)

Hay muchas maneras de crear una API. Una API REST (Representational State Transfer) es un tipo particular que se desarrolla siguiendo reglas específicas.

En otras palabras, REST presenta un conjunto de pautas que los desarrolladores pueden utilizar al crear APIs. Esto asegura que las APIs funcionen eficazmente.

Por lo tanto, para entender cómo funcionan las REST APIs, necesitas saber bajo qué reglas (o restricciones) funcionan.

Hay cinco elementos básicos que hacen que una API sea «REST».

Ten en cuenta que el «servidor» es la plataforma a la que pertenece la API, y el «cliente» es el sitio, aplicación o software que se conecta a esa plataforma.

Arquitectura cliente-servidor

La API debe ser construida de tal manera que el cliente y el servidor permanezcan separados el uno del otro.

De esta manera, pueden seguir desarrollándose por sí mismos y pueden utilizarse de forma independiente.

Estados

Las REST APIs deben seguir un protocolo «sin estado». En otras palabras, no pueden almacenar ninguna información sobre el cliente en el servidor.

La solicitud del cliente debe incluir todos los datos necesarios por adelantado, y la respuesta debe proporcionar todo lo que el cliente necesita. Esto hace que cada interacción se convierta en un «uno y hecho», reduciendo tanto los requerimientos de memoria como el potencial de errores.

Cacheabilidad

«Caché» es el almacenamiento temporal de datos específicos, para que puedan recuperarse y enviarse más rápidamente.

Las REST APIs hacen uso de datos almacenables en caché siempre que es posible, para mejorar la velocidad y la eficiencia. Además, la API debe informar al cliente si cada dato puede y debe almacenarse en caché.

Sistema de capas

Las REST APIs bien diseñadas se construyen utilizando capas, cada una con su propia funcionalidad designada. Estas capas interactúan, pero permanecen separadas.

Esto hace que la API sea más fácil de modificar y actualizar con el tiempo, y también mejora su seguridad.

Interfaz uniforme

Todas las partes de una REST API deben funcionar a través de la misma interfaz y comunicarse utilizando los mismos idiomas.

Esta interfaz debería diseñarse específicamente para la API y ser capaz de evolucionar por sí sola. No debe depender del servidor o cliente para funcionar.

Cualquier API que siga estos principios puede ser considerada RESTful. Existe también una sexta restricción, denominada «código a la carta».

Esta técnica permite que la API instruya al servidor para que transmita código a un cliente, con el fin de ampliar su funcionalidad. Sin embargo, esta restricción es opcional, y no es adoptada por todas las REST APIs.

REST API de WordPress

En este punto, puedes estar preguntándote ¿cómo me afecta todo esto?.

Las APIs son excelentes herramientas, pero ¿son relevantes para tu trabajo diario?

Si eres un usuario de WordPress, la respuesta es inequívocamente «sí».

La REST API de WordPress ha estado en desarrollo desde hace un par de años.

Durante bastante tiempo, se trabajó en él como un plugin independiente, al que los desarrolladores podían contribuir con el tiempo y con el que cualquiera podía experimentar.

De hecho, había dos versiones separadas del plugin de la REST API. Ya en la actualización 4.4 se añadieron elementos de la API a la plataforma central.

Esto fue seguido por una integración completa a partir de WordPress 4.7 (en 2016), lo que significa que, hoy en día, WordPress tiene su propia API REST completamente funcional.

¿Por qué hizo este movimiento?

Según el propio sitio del proyecto, se debe a que WordPress se está convirtiendo en un «framework de aplicación completo».

En otras palabras, la REST API le permite a la plataforma interactuar con casi cualquier sitio y aplicación web.

Además, puede comunicar e intercambiar datos independientemente de los idiomas que utilice un programa externo. Esto abre numerosas posibilidades para los desarrolladores.

También hace que WordPress, como plataforma, sea más flexible y universal que nunca.

También es importante tener en cuenta, y es posible que la hayas escuchado como la API de JSON REST de WordPress.

La parte «JSON» significa JavaScript Object Notation (Notación de objetos JavaScript), y  describe el formato que utiliza esta API para intercambiar datos.

Este formato está basado en JavaScript, y es una forma popular de desarrollar APIs gracias a lo bien que interactúa con muchos lenguajes de programación comunes.

En otras palabras, una API JSON es capaz de facilitar más fácilmente las comunicaciones entre aplicaciones que utilizan diferentes lenguajes.

La anatomía de una solicitud de REST API de WordPress

Ahora, necesitas entender el propósito general y la dirección de la REST API de WordPress, para lo cual entraremos en algunos detalles sobre cómo funciona.

Hay algunos conceptos básicos que necesitarás entender si quieres ponerte manos a la obra y empezar a experimentar tú mismo con la API.

Como hemos explicado, cada API procesa las solicitudes y devuelve las respuestas. En otras palabras, un cliente le pide que realice una determinada acción y la API lleva a cabo esa acción.

La forma exacta en que las API hacen esto puede variar.

Las REST APIs están específicamente diseñadas para recibir y responder a tipos particulares de peticiones, utilizando simples comandos HTML (o «métodos»).

Para ilustrar, aquí están los métodos HTML más básicos e importantes que un cliente puede enviar:

  • GET: Este comando recupera un recurso del servidor (como un dato en particular).
  • POST: Con esto, el cliente añade un recurso al servidor.
  • PUT: Puede utilizar esta opción para editar o actualizar un recurso que ya está en el servidor.
  • DELETE: Como su nombre indica, esto elimina un recurso del servidor.

Junto con estos comandos, el cliente enviará una o más líneas que comunican exactamente qué recurso desea y qué se debe hacerse con él.

Por ejemplo, una petición para subir un archivo PHP a una carpeta en particular en un servidor podría verse así:

POST /nombrecarpeta/mi_archivo.php

La parte /nombrecarpeta/mi_archivoe.php se llama «route» o ruta, ya que le indica a la API dónde ir y con qué datos interactuar.

Cuando se combina con el método HTTP (POST en este caso), toda la función se denomina «endpoint«.

La mayoría de las REST APIs y los clientes que interactúan con ellas se vuelven mucho más complicadas, incluyendo la versión de WordPress.

Sin embargo, estos elementos básicos forman la base para el funcionamiento de la REST API de WordPress.

Cómo empezar a usar la REST API de WordPress

Siempre y cuando tengas un sitio WordPress configurado, puedes empezar a experimentar con la REST API de inmediato. Puedes realizar varias peticiones GET para recuperar datos directamente, simplemente usando tu navegador.

Para acceder a la REST API de WordPress, deberás comenzar por la siguiente ruta:

tudominio.com/wp-json/wp/v2

A continuación, puedes añadir a esa URL para acceder a varios tipos de datos. Por ejemplo, puedes buscar un perfil de usuario específico a través de una ruta como ésta:

tudominio.com/wp-json/wp/v2/users/4567

En este escenario, «4567» es el ID de usuario único para el perfil que deseas ver. Si omites ese ID, en su lugar verás una lista de todos los usuarios de tu sitio.

Puede utilizar la misma ruta básica para ver otros tipos de datos, como tus mensajes o páginas, incluso puedes buscar subconjuntos de los datos que cumplan determinados criterios. Por ejemplo, puedes recuperar todos los mensajes que incluyan un término específico utilizando esta URL:

tudominio.com/wp-json/wp/v2/posts?=buscar[palabra clave]

Esto es sólo una simple ilustración, por supuesto. Casi no hay límite para lo que realmente puede hacer usando la REST API de WordPress.

Si quieres saber más sobre cómo funciona, te recomendamos que empieces con los siguientes recursos:

El Manual de la REST API

Este es un recurso oficial de WordPress que documenta todo tipo de información sobre la REST API.

Entre otras cosas, encontrarás una lista de puntos finales que puedes utilizar, así como detalles sobre algunos de los aspectos estructurales de la REST API que no hemos mencionado aquí.

https://developer.wordpress.org/rest-api/

Tutoriales de W3Schools

Aunque este recurso no es específico de la REST API, ofrece prácticos tutoriales que pueden ayudarte a repasar conceptos clave, como los métodos HTTP y JSON.

https://www.w3schools.com/

La guía definitiva de la REST API de WordPress.

Este libro electrónico gratuito de WP Engine contiene mucha información práctica y ejemplos. Además, te guiará a través de cómo realizar varias tareas básicas (y más avanzadas).

The Ultimate Guide To The WordPress REST API

La REST API de WordPress es sin duda un tema complejo.

Sin embargo, incluso para los que no son desarrolladores, vale la pena entender los conceptos básicos de cómo funciona esta tecnología y lo que hace posible.

Aún más, ¡puede que incluso te permita empezar a interesarte por el desarrollo!

Cómo usar la REST API de WordPress

Video de DecodeCMS

REST API y la seguridad en WordPress

Muchos usuarios de WordPress probablemente subestiman la cantidad de datos que están disponibles a través de la REST API.

Casi todo está disponible para cualquiera que lo solicite: entradas, páginas, categorías, etiquetas, comentarios, taxonomías, medios, usuarios, configuraciones y más.

Para la mayoría de estos tipos de datos, el acceso público es útil. Por ejemplo, si tienes un lector de noticias alimentado por JSON, básicamente puedes replicar toda la estructura de tu sitio prácticamente en cualquier lugar.

Pero ese fácil acceso invita a abusos potenciales.

Al igual que con los feeds RSS, el contenido JSON se puede incrustar fácilmente y se utiliza para hacer spam, phishing, plagio, bloquear cuentas de AdSense, y otras cosas de las que no quiero dar pistas.

Peligros de la REST API

Más allá del robo de contenido, plagio, y otros, la REST API abre la puerta a otra posible preocupación de seguridad sobre la privacidad de los datos de los usuarios.

Por defecto, cada sitio de WordPress entrega una cantidad significativa de datos de usuario a cualquiera o cualquier cosa que lo solicite.

Para cualquier usuario (de cualquier rol) que sea el autor de al menos una entrada o post, su información personal está abiertamente disponible para literalmente todo el mundo.

Así que, ¿qué datos de usuario se exponen a través de la REST API? Como se explica en la documentación, el endpoint /users entrega básicamente todo, excepto las direcciones de correo electrónico y contraseñas de los usuarios.

Todo lo demás -ID, Nombre, Sitio Web, Descripción, URL, Metadatos y demás- es de dominio público gracias a REST API.

¿Cuáles son los riesgos?

Para todo, excepto los datos del usuario, los principales riesgos son básicamente los mismos que para los feeds RSS.

Los raspadores y ladrones de contenido son lo suficientemente inteligentes como para robar tu contenido sin importar el formato.

Si haces que sea fácil para la gente robar tu contenido, lo harán.

Así que, ya sea que estén capturando los datos a través del formato RSS o JSON, el contenido es contenido y la REST API hace que sea más fácil que nunca para cualquiera y cualquier cosa manipular el contenido de tu sitio, categorías, etiquetas, meta, y mucho más.

¿Es eso aceptable? Depende de ti.

Para los datos de los usuarios, entramos en un nuevo nivel de riesgo.

Con los datos del usuario, la información es personal, por lo que existe un riesgo potencial para la privacidad.

Peor aún, para cada usuario, su «Nombre» por defecto es su «Nombre para mostrar», que por defecto es el nombre de usuario registrado a menos que se especifique lo contrario.

Esto significa que los nombres de usuario registrados de tu sitio están disponibles públicamente, por lo que existe un riesgo potencial de seguridad.

Riesgo para la privacidad

Tal vez no sea un problema para la mayoría de los sitios de WordPress. Pero para el porcentaje de sitios que deben cumplir con una política de privacidad oficial u otras reglas y regulaciones de la compañía (GDPR, por ejemplo), compartir públicamente información sobre cada usuario va a ser un problema.

Tal vez tu sitio necesita mantener toda la información del autor en privado por razones legales o políticas (como en un reportaje de noticias o un sitio del gobierno).

En muchos de estos casos, la funcionalidad predeterminada de REST puede representar un grave riesgo para la privacidad.

Riesgo para la seguridad

Por lo que se refiere al riesgo para la seguridad, la importancia y el alcance de la cuestión es objeto de debate. En general, los malos actores necesitan al menos dos cosas para acceder a su sitio:

  • Nombre de usuario
  • Contraseña

Con a la REST API de WordPress, ahora tienen la mitad de lo que necesitan.

Por lo tanto, la REST API introduce una vulnerabilidad de seguridad al facilitar a los atacantes el acceso a tu sitio web por la fuerza bruta.

En lugar de tener que adivinar el nombre de usuario y la contraseña correctos, ahora sólo tienen que adivinar la contraseña.

Desafortunadamente, para muchas cuentas de usuario eso demasiado fácil de hacer.

Cómo asegurar la REST API en WordPress

En este punto, ya tienes un buen entendimiento de cómo funciona la REST API de WordPress y por qué puede ser considerada un riesgo de privacidad y/o seguridad para un vasto porcentaje de sitios de WordPress.

Ya puedes entonces decidir si es o no necesario tomar medidas y proteger tu sitio contra la exposición de datos inseguros.

Afortunadamente, hay un par de maneras fáciles de bloquearlo usando un plugin de WordPress. Aquí hay un par de opciones gratuitas:

  1. Disable WP REST API – Desactiva REST completamente para todos los usuarios no registrados.
  2. REST API Toolbox – Desactiva sólo el punto final de los usuarios de REST.

La primera opción listada aquí, Disable WP REST API, es uno de mis propios plugins. Está diseñado para ser súper ligero y efectivo.

Con eso en mente, cualquiera de estos plugins va a hacer el trabajo de proteger contra la exposición no deseada REST.

Si conoces otras o mejores técnicas, compártelas en los comentarios.

¿Qué medidas están tomando los desarrolladores de WordPress?

El equipo de WordPress es consciente de este riesgo potencial para la privacidad/seguridad y ya ha tomado medidas para bloquearlo.

Por ejemplo, antes de la actualización de WP 4.7.1, la REST API expuso los datos confidenciales de TODOS los usuarios registrados, independientemente de si se les acredita o no como autores de cualquier publicación.

Así que, gracias a las mejoras realizadas en la versión 4.7.1, WordPress ahora muestra los datos de los usuarios SOLAMENTE para los usuarios (de cualquier rol) que son acreditados como autores de los tipos de mensajes registrados.

Este importante paso ayuda a reducir la exposición de los datos de los usuarios, y nos dice que el equipo de WordPress está trabajando activamente para mantenerlo tan seguro y protegido como sea posible.

Esperemos que continúen tomando medidas adicionales para eliminar la exposición innecesaria de información sensible del usuario.

Conclusión

Es tan simple tratar adecuadamente las vulnerabilidades fundamentales inherentes a la REST API de WordPress, que desafortunadamente la mayoría de los usuarios de permanecerán felizmente inconscientes y no hacen nada.

Esta es la razón por la que la REST API debería deshabilitar la visualización pública de la mayoría, si no de todos los datos de usuario.

La información sensible debe ser expuesta sólo a usuarios autentificados.

Deshabilitar la exposición de los datos de los usuarios por defecto ayuda a proteger a la gran mayoría de los usuarios de WordPress y, por supuesto, los desarrolladores siempre serán lo suficientemente inteligentes como para habilitar los endpoints de datos de los usuarios cuando sea necesario.

WordPress REST API explicado para principiantes

2HK6BdF

Antes de sumergirnos en lo que es WordPress REST API, vamos a familiarizarnos un poco con WordPress para el beneficio de los no iniciados.

WordPress, lanzado en 2003, fue creado para crear y publicar páginas web fácilmente, especialmente para personas menos familiarizadas con el desarrollo web o la programación en general. A lo largo de los años WordPress ha evolucionado de una plataforma de blogs a una herramienta de desarrollo web completa capaz de construir aplicaciones web y tiendas de comercio electrónico ricas en funciones.

WordPress amplió sus servicios aún más con la introducción de la API REST de WordPress en diciembre de 2015. Esta poderosa característica abrió las puertas a una forma totalmente nueva de usar WordPress al permitir a los desarrolladores separar el front-end de la gestión de datos. La API REST también les permite aprovechar la base de código de WordPress en otros proyectos web y móviles.

Hay documentación detallada disponible sobre la que puede consultar si está interesado en utilizar la API de REST de WordPress. Sin embargo, las personas que no están familiarizadas con los conceptos básicos de las APIs de REST pueden necesitar entender qué es y cómo funciona

En esta guía, voy a cubrir los conceptos básicos, así como la anatomía de la API de REST para ponerte en marcha con la API de REST de WordPress.

Aquí está todo lo que cubriré

Tabla de Contenido

¿Qué es una API?

Ejemplos de APIREST
API

¿Por qué utilizar REST API?

Anatomía de WordPress REST API

Rutas y puntos

finalesSolicitudesRespuestasClases de controladorEsquema
(JSON)

Cómo usar la API de REST de WordPress?

Habilitación y actualización de la autenticación REST APIAuthenticationPost

DataFetch
Data

 

Qué es una API

Una Interfaz de Programación de Aplicaciones, o API, es un conjunto de instrucciones que se utiliza para la comunicación entre dos o más aplicaciones.

Las APIs permiten que múltiples aplicaciones se comuniquen entre sí o con un back-end centralizado para realizar una tarea específica que también puede implicar el acceso a la base de datos.

Una aplicación que utiliza la API sólo puede acceder a los endpoints (explicados más adelante) para contabilizar y leer datos. No está permitido hacer ningún cambio lógico ni acceder al código de back-end de la API.

En resumen, es un método seguro de dar acceso a aplicaciones de terceros para usar su programa y base de datos.

Existen varios tipos de APIs, tales como:

  • SOAP (Simple Object Access Protocol)
  • XML-RPC
  • JSON-RPC
  • DESCANSO

En este artículo, sólo estoy hablando de la API REST. Antes de explicar lo que es una API de REST, veamos algunos casos importantes de uso en los que las API son útiles.

  • API de Google (permite a los usuarios acceder con sus cuentas de Gmail)
  • Google MAPS (Le permite integrar la funcionalidad MAPS dentro de su aplicación web o móvil)
  • API de Facebook (le permite añadir la función’Iniciar sesión con Facebook’ y publicar a través de la aplicación)
  • API de Twitter (facilita el uso compartido de Twitter)

 

API REST

REST, abreviatura de Representational State Transfer, es un tipo de API que no es un protocolo sino un conjunto de principios arquitectónicos.

Permítanme explicarlo en un lenguaje sencillo.

Las APIs de REST permiten a los usuarios trabajar con datos textuales que son fáciles de analizar y más fáciles de manipular. Estos datos textuales se entregan a través del protocolo de transferencia de hipertexto (HTTP) y utilizan el formato JSON, que permite a los usuarios utilizar estos datos como objetos JavaScript.

Con suerte, eso fue lo suficientemente simple para que lo entendieras.

Por qué usar REST API

Las APIs de REST se han convertido en el estándar de la industria y han sido adoptadas por gigantes de la tecnología como Google, Facebook y Amazon. A los desarrolladores también les resulta más fácil trabajar con ellos debido a su estructura y al rápido intercambio de datos.

¿Por qué las APIs de REST son tan populares? Bueno, es porque usan JSON para formatear los datos. JSON representa los datos en pares clave/valor que son menos confusos y más predecibles. Las API que utilizan JSON son más rápidas en términos de intercambio de datos y tienen un código más simple en comparación con el formato XML.

Estas son algunas de las ventajas de utilizar las APIs de REST:

  • JSON (que se utiliza normalmente con las APIs de REST) se analiza más rápido debido a una estructura más simple.
  • Es más fácil trabajar con ellos.
  • Ofrecen una mejor compatibilidad con el navegador y son ideales para almacenar en caché información especialmente estática.
  • REST API consume menos ancho de banda y es más fácil de integrar con los proyectos web existentes.

Gigantes como Yahoo, eBay, Amazon y Google lo han adoptado.

Ahora que tiene una comprensión básica de lo que es una API y cuáles son las ventajas de usar una API REST, vamos a explorar la anatomía de una API REST de WordPress.

Anatomía de WordPress REST API

Las APIs de REST están construidas para mantener separados tanto el servidor como el cliente, y es más fácil de administrar, actualizar e implementar.
Imagínese si tanto el código del lado del servidor como el del lado del cliente están escritos en un solo archivo y necesita hacer cambios después de unos meses? Bueno, buena suerte en la comprensión de su código en primer lugar, por no hablar de la molestia de actualizar el archivo.

El objetivo principal de cualquier API REST es realizar tareas CRUD (Create, Read, Update, and Delete).

Normalmente, se solicita una API con las siguientes solicitudes del cliente:

GET: Este comando obtiene los datos del servidor. Por ejemplo, la recuperación de la información del cliente.

POST: Este comando le permite agregar datos al servidor. Por ejemplo, registrar un cliente.

PUT: Este comando le permite actualizar los datos existentes. Por ejemplo, actualizar la contraseña de un visitante.

DELETE: Como su nombre lo indica, este comando le permite borrar datos de la base de datos.

Rutas y puntos finales

Las rutas y los Endpoints son dos elementos fundamentales de la API de WordPress REST. Un endpoint es simplemente una URL a través de la cual se construye una conexión con el servidor y las Rutas son los micro-servicios individuales a los que se puede acceder para realizar la operación específica.

Aquí hay un ejemplo:

https://wordpress.org/wp-json/

En la URL anterior, /wp-json/ es la ruta que obtiene la información relacionada con WordPress, espacios de nombres y rutas.

Peticiones

Cualquier tarea que realice utilizando la API de REST de WordPress está en forma de solicitud. Esta petición es manejada por la clase por defecto llamada WP_REST_Request. Esta clase almacena la información de todas las peticiones que realiza utilizando la API de WP REST.

Normalmente, una solicitud se realiza a un determinado punto final y también puede contener parámetros. Un ejemplo de ello es recuperar los datos de contabilización de una categoría determinada.

Respuestas

La respuesta contiene la información deseada que usted solicitó mientras hacía la solicitud a una API. La respuesta de la API REST de WordPress contiene los datos en formato JSON, lo que facilita el trabajo. Si algo sale mal o la validación falla, se obtiene un error dentro de la misma respuesta.

La forma más fácil de ver la respuesta es utilizando la herramienta del desarrollador Chrome. Simplemente haga clic derecho en la ventana y haga clic en Inspeccionar. Esto debería abrir una nueva ventana dentro de la cual puede ir a Consola para mensajes de consola y a la pestaña Red para una vista detallada de una solicitud de API.

Como puede ver, contiene información útil como la URL solicitada, el método de solicitud, el código de estado y las cabeceras de respuesta.

Clases de controladores

Controller Classes amplía aún más la funcionalidad de la API de REST de WordPress. Le permite construir sus endpoints y rutas personalizadas y gestionar todos los elementos responsables de la ejecución de la API.

Esquema (JSON)

Schema le permite definir las estructuras de datos que los endpoints pueden utilizar y los parámetros que la API REST puede aceptar.

Cómo usar la API de REST de WordPress

Habilitación de la API REST en WordPress

Para utilizar la API de WP REST, asegúrese de que ya está instalada ejecutando el siguiente comando (puede ejecutar el comando dentro del terminal SSH):

 

wp –info
1
wp –info

Obtuve el siguiente error después de ejecutar el comando anterior, lo que significa que necesito instalar wp-cli en mi servidor.

Instalar la API REST en WordPress es fácil. Sólo tienes que ejecutar el siguiente comando:

 

curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
1
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar

Ahora cambie el permiso del archivo para hacerlo ejecutable:

 

chmod +x wp-cli.phar sudo mv wp-cli.phar /usr/local/bin/wp
1
2
chmod +x wp-cli.phar
sudo mv wp-cli.phar /usr/local/bin/wp

Ahora puede ejecutar los comandos WP-CLI sin ningún problema.

Actualización de la API REST en WordPress

En caso de que necesite actualizar la API de REST, simplemente inicie sesión en su terminal SSH y ejecute el siguiente comando.

 

wp cli update
1
wp cli update

Este comando actualizará la API REST en WordPress con la versión más reciente y estable de la API WP REST.

Autenticación

La autenticación básica con la API REST de WordPress es fácil de configurar. En este tipo de autenticación, el usuario solicita una URL que requiere verificación. Las credenciales que el usuario envía a esta petición están codificadas en la cadena base64. Sin embargo, este no se considera el método más seguro de autenticación, ya que una cadena base64 puede decodificarse fácilmente.

Para utilizar este tipo de autenticación, descargue el plugin Basic Auth de Github y cárguelo a su sitio WordPress usando la pestaña Plugins.

Otros dos tipos de autenticación son la autenticación por cookies, utilizada por plugins y temas que se ejecutan en el mismo sitio, y la autenticación por OAuth, utilizada por clientes externos.

Contabilizar datos

La principal ventaja de usar la API REST en WordPress es su capacidad de conectar WordPress a cualquier otra aplicación.

la función wp_remote_post puede utilizarse para contabilizar datos. Esta función acepta dos parámetros: Endpoint o la URL que desea utilizar y los argumentos que desea enviar con él.

Por ejemplo, si necesita añadir un nuevo mensaje utilizando la API de WordPress, puede hacerlo a través del siguiente método.

 

= array (‘title’ =>’WP REST API’,’status’ =>’draft’,’content’ =>’content’ =>’content’); $response = wp_remote_post( ‘_COPY2@yoursite.com/wp-json/wp/v2/posts/’, $args);
1
2
3
4
5
6
$args[‘body’] = array(
«WP REST API»,
«Status» =>»Draft»,
«content» =>»content
);
Respuesta = wp_remote_post( ‘_COPY2@yoursite.com/wp-json/wp/v2/posts/’, $args );

En el código anterior, solicité a mi sitio de WordPress que agregara una nueva entrada de blog usando la API de REST de WordPress.

Obtener datos

La función wp_remote_post también se puede utilizar para obtener los datos de su sitio WordPress.

Por ejemplo, si necesitas recuperar mensajes de una categoría determinada, simplemente solicítalo usando la siguiente línea de código:

Respuesta = wp_remote_get( ‘_COPY2@yoursite.com/wp-json/wp/v2/posts/?categories=3’);
1
Respuesta = wp_remote_get( ‘_COPY2@yoursite.com/wp-json/wp/v2/posts/?categories=3’);

En el código anterior, solicité mensajes de una cierta categoría sólo usando la API de REST de WordPress. Sin embargo, esto puede devolver un error si intento acceder a los recursos Restringidos sin pasar los criterios de autenticación establecidos.

Reflexiones finales

WordPress REST API es una poderosa herramienta que puede ser utilizada para construir nuevos plugins, actualizar proyectos web existentes y automatizar tareas. Usar la API de REST es la forma más rápida y mejor de conectar tus proyectos web con WordPress.

En este tutorial, he explicado qué es una API REST, cómo funciona y cómo funciona la API REST de WordPress. Te sugiero que lo pruebes y experimentes con él para entender el verdadero poder de esta asombrosa función.

Además, no olvides compartir tu experiencia en los comentarios que siguen.