Introducción a WP REST API en WordPress

WP REST API

Es un hecho que WordPress es el CMS más utilizando en el mundo con un Market Share de un 58.8% según W3 Techs. Una gran parte de las empresas que confían en WordPress para sus aplicaciones, sitios web o servicios en general también han desarrollado apps para móviles y se han enfrentado a la necesidad de tener una única base de datos desde la cual servir el contenido no solo al sitio web, también a dichas apps.

Con estos fines, existe WP REST API que fue creado primero cómo un plugin y que fue integrado en el Core de WordPress desde la versión 4.7.

WP REST API da la posibilidad de utilizar WordPress como un Web Service y por lo tanto integrar aplicaciones externas para leer, crear y modificar datos.

En este tutorial te voy a mostrar cómo utilizar WP REST API para obtener datos desde WordPress.

Algunos ejemplos concretos, son:

  • Conectar WordPress a una interfaz Frontend desarrollada con React.js, Angular o Vue.js;
  • Desarrollar una app para móviles con WordPress como gestor de contenidos;
  • Desarrollar un búscador estilo live search para WordPress.

Para comprobar que WP REST API está habilitado y funcional, utilizamos la siguiente URL en el navegador:

http://wpexpertos.net/wp-json/

Importante: En este tutorial utilizamos nuestro propio dominio con fines de prueba, pero debes utilizar tu propio dominio para obtener tus propios datos.

Observa el resultado, está en formato JSON (JavaScript Object Notation) un formato pensado para el intercambio de datos.

 

En el video anterior puedes ver todas las rutas que puedes utilizar para obtener, crear o modificar datos. El cómo lo hagas, dependerá del tipo de llamada HTTP que hagas. Las más comunes son GET y POST, aunque puedes utilizar otras como HEAD, PUT o DELETE.

Utiizando estas rutas podemos obtener:

  • Entradas (Posts)
  • Revisiones de entradas (Post Revisions)
  • Categorías (Categories)
  • Etiquetas (Tags)
  • Páginas (Pages)
  • Comentarios (Comments)
  • Taxonomías (Taxonomies)
  • Archivos (Media)
  • Usuarios (Users)
  • Tipos de posts (Post Types)
  • Estados de posts (Post Status)
  • Preferencias (Settings)

Leer posts utilizando WP REST API

Si queremos listar todos los posts, utilizamos:

http://wpexpertos.net/wp-json/wp/v2/posts
Mostrando posts con WP REST API
Mostrando posts con WP REST API

Si queremos obtener un post específico utilizando su ID:

http://wpexpertos.net/wp-json/wp/v2/posts/154

Podemos agregar otros parámetros como:

  • search: devuelve los resultados limitados a una palabra clave, como en un buscador;
  • page: devuelve la página específica, como en un paginador;
  • per_page: limita la cantidad de posts a mostrar por página. Se utiliza generalmente con page;
  • slug: limita los resultados a posts que contienen el slug específico;
  • categories: limita los resultados a categorías específicas;
  • categories_exclude: limita los resultados a todos los que no tengan las categorías específicas.

Puedes ver un listado completo y detallado en la referencia de WordPress

Por ejemplo, si queremos mostrar dos posts por página e ir directamente a la página dos:

http://wpexpertos.net/wp-json/wp/v2/posts/?per_page=2&page=2

Si queremos mostrar todos los posts que contenga la palabra “plugin” y que pertenezca a la categoría con ID: 10:

http://wpexpertos.net/wp-json/wp/v2/posts/?search=plugin&categories=10

Recibiendo otros tipos de contenido con WP REST API:

El formato de URL a utilizar es similar en todos los tipos de contenidos, variando solo el endpoint y los parámetros que queramos asignar a este.

Por ejemplo, si queremos cargar los usuarios utilizamos:

http://wpexpertos.net/wp-json/wp/v2/users
Listando usuarios con WP REST API
Mostrando usuarios con WP REST API

Los datos de usuarios están restringidos en WordPress Expertos por temas de seguridad. En la imagen puedes ver un ejemplo de como quedaría. Prueba con tu propio sitio web y podrás ver un ejemplo real.

Para cargar las páginas utilizamos:

http://wpexpertos.net/wp-json/wp/v2/pages
Mostrando páginas con WP REST API
Mostrando páginas con WP REST API

Conclusión

Leer datos es solo rascar la superficie de todo lo que podemos hacer con WP REST API. Sin embargo, por el momento lo vamos a dejar así para mantenerlo simple.

En próximos tutoriales veremos:

  • Cómo modificar datos utilizando POST;
  • Crear endpoints personalizados;
  • Agregar metadatos a endopints ya existentes;
  • Obtener más control sobre la seguridad de los datos a mostrar;
  • Los tipos de autenticación disponibles para utilizar WP REST API.

Mantente atento a próximos tutoriales para seguir aprendiendo sobre esta excepcional API que incluye WordPress en su versión más reciente.

 

 

 

 

Deja un comentario