WordPress REST API ¿qué es? ¿cómo funciona?

¿No sabes qué es la REST API? Vamos a hacer una breve pero aclaratoria explicación sobre lo que es y lo que puedes esperar de la WordPress REST API, quizás el cambio más sustancial desde 2003, el año en que se lanzó la versión 0.7 de WordPress (si, la primera)

Así que vamos a describir lo que son las APIs, JSON y la arquitectura REST, cómo pueden beneficiar a tu web WordPress y porqué es tan genial.

Y antes de ponernos a debatir sobre la WordPress REST API es importante identificar al menos la terminología y todo lo que hay detrás ¿vamos a ello?

¿Qué es una API?

¿Utilizas Facebook, Twitter, Google Analytics o compras algo online? Si la respuesta es sí entonces ¡felicidades, ya te estás beneficiando de las APIs?

Lo primero que debes saber sobre una API es que es la abreviatura de Application Programming Interface, o Interfaz de Programación de Aplicaciones. Suena bien ¿verdad? No te emociones, pues igual no te suena tan bien si piensas en una API como contenedores de información que se envían entre sí distintas partes de una comunicación entre aplicaciones ¿a que así es más rarito?

Una API consigue que los desarrolladores interactúen con los datos de la aplicación de un modo planificado y ordenado. Por ejemplo, la API de Facebook ofrece a los desarrolladores la posibilidad de obtener y mostrar todos los amigos de un usuario. Como las APIs incluyen documentación (una serie de instrucciones detalladas) es fácil para los desarrolladores obtener los datos que necesiten.

JSON

JSON es la abreviatura de JavaScript Object Notation, un formato que permite la clasificación e intercambio de datos, principalmente utilizado en bases de datos.

Con JSON la WordPress REST API será posible la comunicación con la información almacenada en nuestro WordPress, da igual el tipo de aplicación que los requiera.

Arquitectura REST

REST, abreviatura de Representational State Transfer, o Transferencia de Estado Representacional (pedazo de palabro) es un estilo de arquitectura para diseñar aplicaciones en red. Una API podría considerarse REST si su arquitectura se ajusta a ciertas reglas o restricciones. ¿Quieres saber cuáles son estas restricciones? aquí puedes verlas.

La idea que transciende tras una REST es ofrecer una alternativa sencilla para tecnologías complejas como CORBA, RPC o SOAP. Para conseguirlo REST utiliza HTTP.

Peticiones HTTP

La REST API es mucho más efectiva gracias a HTTP (Hyper Text Transfer Protocol). El motivo de que esto sea así es que este protocolo permite compartir información entre un cliente (portátil, teléfono móvil, tableta, etc.) y un servidor.

Un ejemplo sería una actualización de estado en Facebook. En nombre de un usuario de Facebook se envía una petición HTTP desde un código JavaScript (cliente) a la API de Facebook (servidor). Una vez que el usuario publica una actualización de estado el cliente (el código JavaScript) recibirá una respuesta del servidor de Facebook estableciendo que la operación se ha completado con éxito. Por resumirlo, un escenario de petición HTTP funciona así:

  1. Un cliente envía una petición HTTP a un servidor.
  2. El servidor devuelve una respuesta HTTP.

REST funciona basándose en los métodos HTTP, y esto es genial para nosotros.

WordPress json rest api

Posibilidades de la API REST de WordPress

Una de las mejoras que incorpora la API WordPress es que ya puedes realizar cualquiera de las acciones CRUD (de Create, Read, Update, Delete; o en español Crea, Lee, Actualiza, Borra) en cualquiera de los recursos de tu sitio WordPress (entradas, páginas, medios, meta de entradas, revisiones de entradas, comentarios, taxonomías, etiquetas, usuarios). Gracias a testo puedes usar la API WordPress para crear una entrada, mostrarla, actualizarla, o borrar entradas asociadas a tu sitio WordPress.

Si ya tienes una mejor comprensión de lo que son las APIs, la arquitectura REST, las peticiones HTTP y la API WordPress, vamos a ver las posibilidades, así como implementaciones, de la API REST de WordPress.

Y nada mejor que tomar como referencia un par de ejemplos que el mismo Matt Mullenweg expuso.

Para empezar, Matt describió la REST API como “enorme y revolucionaria para los desarrolladores“, lo que implica que facilitará que haya plugins aún más potentes, y temas y aplicaciones que hasta ahora no habíamos visto en WordPress.

Un ejemplo que ponía Matt:

“Es algo extraordinario cuando se combina con cualquier otra cosa. Imagina una futura versión de HappyTables (una web para crear webs de restaurantes en unos clics y con maquetación visual) que no modifique la administración de WordPress, que simplemente disponga de una interfaz personalizada basada en la REST API en vez de modificar prácticamente toda la administración de WordPress”

Más adelante añadía…

“Pienso en la REST API como el comienzo de una administración de WordPress que se adapta a cómo los clientes quieran gestionar su WordPress. Piensa en la administración de WordPress como clientes PHP, HTML y JavaScript (…) Vamos a ver clientes nativos, incluso clientes puramente en JavaScript (…) Piensa en que el escritorio de WordPress sea algo que puedas cambiar tan fácilmente como cambias de tema”

Si quieres, ya puedes acceder a los datos de tu sitio desde una API REST HTTP simplemente instalando el plugin ya disponible.

Resumiendo

Supongo que, como yo, estarás muy interesado, quizás incluso emocionado, con la WordPress REST API, pero sobre todo con las fantásticas posibilidades e implicaciones que la REST API de WordPress puede ofrecer.

La WordPress REST API es la nueva generación de WordPress, abriendo esta ya impresionante plataforma a nuevas formas de usarla, ampliarla, mejorarla y, sobre todo, adaptarla a todo tipo de proyectos.

¿Quien está usando ya la REST API?

Hay muchas empresas y desarrolladores que, si no la están implantando ya, al menos están preparándose para el apasionante futuro que nos espera. Aquí tienes unos ejemplos, y si sabes alguno más nos avisas en los comentarios y los añadimos:

  • Human Made ya está usando la API en proyectos de sus clientes creando, por ejemplo aplicaciones en portada usando Node.
  • Reactor utiliza la API para crear aplicaciones móviles.
  • Aesop Interactive usa la API en Lasso y el plugin WP Live Search.
  • Join In, una web que coordina voluntarios en el Reino Unido ha utilizado la API para crear un widget JavaScript incrustable.
  • Per Soderlind ha utilizado la WordPress REST API como escritorio para  una apliación iOS para el ministerio noruego de petróleo y energía.
  • Modern Tribe ya está creando webs usando la REST API.

Este artículo solo pretende ser una introducción teórica a lo que es la WordPress REST API y las tecnologías que lo hacen posible. En breve veremos aplicaciones específicas y modos de utilizarla. De momento te dejo unas cuantas referencias imprescindibles para ir poniéndote al día con el futuro de WordPress, ya presente gracias a la REST API:

 

Valora este artículo para mejorar la calidad del blog ...

PobreRegularEstá bienMuy buenoExcelente (7 votos, promedio: 4,29 de 5)
Loading...

Autor: Fernando

Fernando Tellado, apasionado de WordPress, profesor, consultor y ponente. Maquero cansino, padre de tres hijos y de una perrita Beagle, Bilbaíno de nacimiento, Español de corazón y ciudadano de donde me quieran. Autor del libro WordPress - La tela de la araña. Mi blog personal es Navegando con red, donde he crecido como escritor en la red y ofrezco mis visiones acerca de la Web 2.0 y la blogosfera.

Comparte esta entrada en
468 ad
  • Se me ocurre que se podría hacer una app para móviles de algún sitio que utilice BuddyPress, por ejemplo.

    • Ibon Azkoitia Velasco

      Así es @alessandro_o_d:disqus puedes hacer cualquier tipo de App, ya que coges los datos a través de la REST API directamente. Las opciones son muchas, pero aún hay que mejorar la REST API y añadirle muchas funcionalidades… pero el futuro pinta muy bien!

      PD: si alguien va a ir al evento en Londres que me diga! que estaré por allí.

      • Algunos trabajamos y tal 😛

        • Ibon Azkoitia Velasco

          Algunos otros también… pero somos yonkis del WiFi y con tener podemos trabajar 😛 Sé bueno!

  • Fernando Puente

    Gran introducción Fernando, es cierto que es un gran paso de software a framework, un nuevo concepto.

    Añado dos apuntes importantes que para mi lo hacen más fundamental todavía:
    – La apertura a nuevos lenguajes de programación. Ya no es necesario saber PHP para construir aplicaciones basadas en WordPress, lo que abre un mundo para la gran cantidad de desarrolladores de otras comunidades (frameworks Javascript, Java, python, .NET, …) que no utilizaban WP como CMS o software de repositorio de sus proyectos.
    – Vuelta a la tecnología cliente-servidor. Donde tenemos centralizado nuestro repositorio de datos y múltiples aplicaciones son capaces de dialogar con él. Abriéndose también a entornos fuera de la propia WWW (clientes nativos para móviles, SmartTV, domótica, coches conectados…)

    Por otro lado, se está pensando mucho en la posible utilidad de la REST API para construir nuevos o extender administradores de WordPress, pero creo que eso se queda muy corto, hay que ir un paso más allá en el concepto de nuevas aplicaciones (no hablo sólo de webs) e integraciones con terceros.

    Por último, REST API también nos brinda la posibilidad de extender las funcionalidades ya existentes del propio WP (comentarios, posts, páginas, etc…), nuevo paso obligado para las grandes (o no) empresas que desarrollan plugins. ¿Os imaginais manejar y modificar las funciones YOAST SEO de vuestro artículo desde un robot externo que está leyendo en tiempo real los datos de Google Analytics y actúa según el tráfico o tendencias o lo que hace nuestra competencia sin entrar en WP?

    Me he vuelto a enrollar…sorry

  • Pingback: Enlace Permanente #02: ¿Hacia dónde va la REST API? - Blog | ciudadanoB()

  • Pingback: Ve el Webinar Las 10 preguntas top sobre WordPress con Fernando Tellado()

  • Pingback: Novedades de WordPress 4.5, poca cosa pero habrá que actualizar | Ayuda WordPress()

  • Pingback: Enlace Permanente #02: ¿Hacia dónde va la REST API? - Juan Hernando – ciudadanoB()

  • Pingback: No necesitas permiso para crear - Francisco Aguilera G.()

Pin It on Pinterest

ESTA WEB UTILIZA COOKIES PARA OFRECER LA MEJOR EXPERIENCIA POSIBLE. SI SIGUES NAVEGANDO DAS TU CONSENTIMIENTO PARA LA ACEPTACIÓN DE COOKIES Y NUESTRA POLÍTICA DE PRIVACIDAD más información

Las opciones de cookie en este sitio web están configuradas para "permitir cookies" para ofrecerte una mejor experiéncia de navegación. Si sigues utilizando este sitio web sin cambiar tus opciones o haces clic en "Aceptar" estarás consintiendo las cookies de este sitio.

Cerrar