Una Introducción al REST API de WordPress

Una Introducción al REST API de WordPress thumbnail

Cuando el REST API finalmente fue añadido al core de WordPress, fue el final de un largo trayecto. Muchos habían anticipado que este cambio sería el mayor paso hacia adelante para WordPress en la historia de la plataforma. Sin embargo, si no estás familiarizado con el REST API, puedes estar un poco confundido con lo que todo esto significa. 

En resumen, la adición del REST API de WordPress convirtió WordPress en un framework de aplicación con todas las funciones. Esto incrementó significativamente su ‘extensibilidad’, o su habilidad para ser extendido con nuevas funciones o capacidades. Además, extendió el potencial de la plataforma para comunicarse con otros sitios y aplicaciones.

Una Introducción a los REST APIs

Antes de que ahondemos más sobre el REST API de WordPress, es importante poner en orden nuestra terminología. Este es un tema donde todos necesitamos utilizar muchos acrónimos, entonces aclarémoslo primero. 

Primero y más importante, tendrás que saber qué son las Interfaces de Programación de Aplicaciones (APIs). En los términos más simples, un API es un medio por el cual un sistema habilita otros sistemas para que realice una conexión a sus datos.  

Por ejemplo, cuando un sitio web añade un botón de ‘Like’ de Facebook a una página, lo hace al engancharse al API de Facebook. Esto le permite a la página web emplear un API para recibir datos (el código del botón de ‘like’) y enviar datos (la solicitud de acción de ‘like’).

Entonces, ¿qué es un REST API específicamente? La Transferencia de Estado Representacional (REST) es un tipo de API específico de los servicios web. Contiene un conjunto estandarizado de instrucciones y reglas, haciéndolo más fácil para todos los servicios ‘RESTful’ para conectarse con cada uno. 

En resumen, los REST APIs te permiten ejecutar solicitudes a un sistema externo. Un ejemplo de esto es Twitter. Puedes usar su API para solicitar un cierto número de trinos de un usuario específico. El API luego mostrará los trinos basándose en tu solicitud, lo cual puedes incrustar en tu sitio empleando HTML y CSS.

Estas solicitudes son llevadas a cabo utilizando JavaScript Object Notation (JSON). Este es un lenguaje diseñado específicamente para enviar, recibir y almacenar información. 

Hablaremos sobre JSON más tarde en este artículo, pero recomendamos tomarte el tiempo para familiarizarte con este lenguaje desde el comienzo. Esto te ayudará a prepararte para usar el REST API de WordPress y entender algunos de los conceptos de los que hablaremos. 

Qué es el REST API de WordPress (Y Su Importancia)
Logo WordPress REST API

El WordPress REST API funciona en gran medida de la misma manera que los ejemplos que ya hemos mencionado. Básicamente, el REST API de WordPress te da acceso completo a las funciones de WordPress desde cualquier framework compatible con JSON. 

Similar a como el API de Twitter te permite recuperar y enviar trinos, el REST API de WordPress puede ser empleado para administrar tus publicaciones, usuarios, categorías y mucho más de plataformas externas. Te permite usar WordPress en un número de formas sin precedentes. 

El REST API fue anunciado en el año 2013. Comenzó su vida como un plugin, hecho para ser incorporado en el core de WordPress en la versión 4.1. Como pasa muy a menudo, hubo retrasos en el calendario que demoraron el lanzamiento hasta que finalmente fue implementado en el core con el lanzamiento de WordPress 4.7 tres años después. 

Esta fue una espera larga, pero que valió la pena para muchas personas que vieron el REST API de WordPress como un paso importante hacia adelante para la plataforma. Puede que te estés preguntando por qué esta adición fue tan importante, especialmente debido a que muchos usuarios probablemente no notaron una diferencia muy grande. Como resultado, la inclusión del REST API fue un cambio fundamental para WordPress por muchas razones. 

Al implementar un REST API, WordPress dio un paso al lado de ser simplemente una plataforma para crear sitios. En cambio, ahora se ha convertido en un framework completo de aplicación. Esto quiere decir que los desarrolladores pueden usar un sitio WordPress para crear aplicaciones de dispositivos móviles y web, o como un repositorio de información.  

Este cambio también permitió que WordPress se alejara de su dependencia de PHP. Al hacer que WordPress fuera compatible con cualquier idioma compatible con JASN, el REST API expandió increíblemente las posibilidades para los desarrolladores, permitiéndoles utilizar la funcionalidad de WordPress con prácticamente cualquier framework. 

Finalmente, el REST API proporciona flexibilidad incrementada con las interfaces que puedes utilizar para trabajar con la plataforma. Hizo que la interfaz administrativa fuera completamente opcional, ya que ahora puedes interactuar con tu sitio WordPress completamente a través de comandos JSON. 

Ahora, veamos cómo trabajan juntos JSON y el REST API para hacer esto posible.  

Cómo Trabajan Juntos el REST API y JSON

En este punto, deberías tener una idea de los aspectos teóricos del REST API de WordPress. Entonces, echemos un vistazo al lado más práctico de la tecnología. El manual oficial describe usar el REST API de la siguiente manera:

“El REST API de WordPress proporciona ‘endpoints’ de API para tipos de información de WordPress que le permite a los desarrolladores interactuar con los sitios de manera remota, al enviar objetos JSON (JavaScript Object Notation)”. 

La primera palabra en que debemos hacer énfasis es “endpoints” o “puntos finales”. La manera más fácil de pensar en un endpoint es una pieza de información o una función que puede ser llamada utilizando una solicitud JSON. Por defecto, WordPress proporciona un gran número de endpoints estándar para usar, pero los desarrolladores también pueden crear endpoints personalizados.

Para alcanzar un endpoint, debes emplear una ‘ruta’, que toma la forma de una URL normal. Incluso puedes intentar esto tú mismo ahora.  

Ve a tu sitio WordPress, y añade /wp-json/wp/v2 al final de su URL. Si tu sitio es http://ejemplo.com, la URL debería verse así: http://ejemplo.com/wp-json/wp/v2.

Cuando cargues esta ruta, alcanzarás el endpoint, que en este caso, regresa todo el contenido y metadatos de tu sitio en un formato (desordenado) JSON. Al usar diferentes rutas, puedes acceder a diferentes endpoints para obtener tipos específicos de información y realizar varias tareas. 

Hay 3 solicitudes JSON principales que usarás con el REST API, entonces también echémosle un vistazo rápidamente ahora: Estas son: 

  • GET. Este tipo de solicitud es utilizada para obtener y listar información del API. Por ejemplo, podrías utilizar la solicitud GET para obtener una lista de usuarios en tu sitio o compilar publicaciones de blog de una franja de tiempo. 
  • POST. Esta solicitud es empleada para enviar información al API. Te permite enviar nueva información a WordPress, tal como añadir nuevos usuarios y publicaciones o actualizar información existente.
  • DELETE. Como el nombre lo sugiere, esta solicitud es usada para eliminar información. Esto te permite remover publicaciones, páginas, usuarios y más. 

GET y POST algunas veces pueden ser empleadas con el mismo endpoint para lograr diferentes resultados. 

Por ejemplo, veamos el endpoint /me/settings/. Si fueras a realizar una solicitud GET en este endpoint, recibirás una lista de las configuraciones actuales de usuario. Sin embargo, al utilizar una solicitud POST en el mismo endpoint, en cambio, podrás actualizar las configuraciones. 

Recibe Contenido Directamente en Tu Bandeja de Entrada

Suscríbete a nuestro blog y recibe contenido grandioso como este directamente en tu bandeja de entrada.

Comenzando Con el REST API de WordPress

Ahora pondremos toda esta teoría en práctica y te mostraremos algunos ejemplos básicos de lo que puedes hacer con el REST API. Esto es solo una prueba para ayudarte a familiarizarte con el uso del REST API para procesar solicitudes de WordPress. 

Para más ejemplos, recomendamos echar un vistazo a la biblioteca oficial de referencia y Recursos REST API.

Las siguientes técnicas requerirán que utilices la línea de comandos para procesar solicitudes JSON. Esto te permite interactuar con tu sitio WordPress al utilizar una interfaz basada en texto y enviar comandos simples. 

Si no tienes experiencia usando la línea de comando, te recomendamos que primero te tomes algo de tiempo para aprender los principios básicos. Puede que también quieras utilizar SSH para crear la conexión con tu sitio. 

Finalmente, cuando estés listo, veamos algunos ejemplos sobre cómo puedes emplear el REST API de WordPress.

1. Obtener Publicaciones de un Sitio

Mientras que obviamente necesitas la autorización pertinente para editar un sitio web, es posible obtener algo de información de casi cualquier sitio WordPress. Esto es debido a que el REST API es un elemento consistente a través de todas las instalaciones WordPress. 

Como lo discutimos anteriormente, la razón principal por la que las APIs existen es permitir aplicaciones externas para acceder a una parte de tu información. En este ejemplo, podemos obtener una sola publicación del blog oficial de noticias de WordPress:  

curl https://wordpress.org/news/wp-json/wp/v2/posts/1

El ID ha sido configurado en 1, lo que significa que esta solicitud obtendrá la primera publicación del blog. Puede ser difícil de ver, ya que el JSON no es muy legible, pero entre el código, puedes ver todo el contenido y los metadatos de la primera publicación. 

Archivo código JSON obtenido con REST API de WordPress

Luego podrías usar esta información en una aplicación, por ejemplo, para mostrarlo utilizando tu propio estilo personalizado. 

Si, en cambio, deseas obtener cada publicación del blog, todo lo que debes hacer es remover ese ID al final. Sin embargo, es mucho más probable que quieras obtener un número seleccionado de publicaciones. La siguiente solicitud obtendrá las últimas 3 publicaciones: 

curl https://wordpress.org/news/wp-json/wp/v2/posts/?per_page=3

Puedes probar esto tú mismo con otros sitios e incluso con tu propio blog. 

2. Actualiza Una Publicación

Ahora, probemos realizar algunos cambios en WordPress empleado en REST API. Para hacer esto, tendrás que haber iniciado sesión en el sitio que deseas administrar. Por ejemplo, si estás utilizando SSH, tendrás que iniciar sesión en tu servidor. 

En este ejemplo, actualizar una publicación existente. Primero, intentemos emplear una solicitud para actualizar el título de la publicación con el ID de 1: 

curl -X POST http://example.com/wp-json/wp/v2/posts/1 -d '{"title":"A Brand New Title"}'

Esto se explica por sí solo. El argumento del título muestra que estás actualizando el título de la publicación, lo cual es seguido por la línea de texto que contiene el reemplazo. 

Hay suficientes otros argumentos que puedes usar para realizar cambios en una publicación. Por ejemplo, puedes utilizar una lista para asignar categorías a la publicación, publicarla o cambiar su contenido completamente. 

3. Eliminar un Usuario

Finalmente, veamos cómo puedes eliminar información empleando el REST API. En este ejemplo, removeremos un usuario del sitio. Naturalmente, tendrás que haber iniciado sesión y estar autorizado para administrar usuarios antes de implementar esta función. 

Luego, puedes utilizar la siguiente solicitud para eliminar el usuario con un ID de 101:

curl -X DELETE http://example.com/wp-json/wp/v2/users/101

Esto removerá el usuario especificado del sitio. Puedes usar los parámetros adicionales para reasignar las publicaciones del usuario a otro usuario basado en su ID. Alternativamente, puedes forzar una eliminación permanente en vez de enviar el usuario a la papelera. 

A través de estos ejemplos, puedes comenzar a ver cómo el REST API te permite administrar el contenido de tu sitio y conectarte con otros. Si deseas aprender más, te recomendamos que leas más en el manual de REST API.

Explora el Desarrollo de WordPress

El REST API de WordPress fue un gran paso hacia adelante para la plataforma, lejos de sus raíces y hacia el futuro.  Los desarrolladores estaban emocionados desde el primer día, pero si no estabas familiarizado con los REST APIs desde el principio, puede que te hayas preguntado por qué.  

Aunque el REST API puede parecer abrumador para los principiantes, no necesitas ser un desarrollador experimentado para usar algunas solicitudes básicas. Por ejemplo, el API te permite realizar tareas diversas en tu sitio (o el de otros), tales como obtener publicaciones, actualizar publicaciones y eliminar usuarios. 

¿Estás buscando alojamiento de alto rendimiento para tu sitio WordPress? En DreamHost, nuestros planes administrados de DreamPress ofrecen ambientes profesionales de staging, copias de seguridad automáticas, caché incorporado y más. ¡Échale un vistazo a nuestros planes!

Haz Más Con DreamPress

Las actualizaciones automáticas de DreamPress, caché y fuertes defensas de seguridad toman la administración de WordPress de tus manos para que puedas enfocarte en tu sitio web

Photo of Jason Cosper
Sobre el Autor:

Jason es el Promotor de Productos de WordPress de DreamHost, ubicado en Bakersfield, CA. Actualmente está trabajando para mejorar nuestro producto DreamPress aún más. En su tiempo libre, le gusta acurrucarse en el sofá y ver películas de terror con su esposa Sarah y tres perros muy pequeños. Síguelo en Twitter.