Guía para principiantes de la API REST de WordPress
access_time
hourglass_empty
person_outline

Guía para principiantes de la API REST de WordPress

¿Estás buscando un tutorial para principiantes sobre WordPress REST API? ¡Entonces has venido al lugar correcto! En este artículo, te presentaremos el proyecto de WordPress API REST, le explicaremos por qué es tan importante y te ofreceremos algunas ideas sobre cómo usarlo.

Presentamos la API REST de WordPress

Página de inicio del proyecto WP REST API

El proyecto API de Transferencia de Estado Representacional (REST, por sus siglas en inglés) ​​es un estilo arquitectónico de software que determina cómo los servicios web se comunican entre sí a través del Protocolo de transferencia de hipertexto.

En junio de 2013, Ryan McCue y Rachel Baker de WordPress subieron el proyecto REST API a GitHub. Después de obtener mucho apoyo público y atraer a casi 100 contribuyentes para mejoras futuras, el proyecto se agregó al núcleo de WordPress en Diciembre de 2015.

Ahora, casi todos los profesionales que trabajan con WordPress han oído hablar de la API REST. Sin embargo, desde su integración principal, solo los desarrolladores avanzados se han tomado el tiempo de aprender qué tan poderosa puede ser esta nueva función. Esto es muy desafortunado ya que esta herramienta puede abrir infinitas posibilidades para extender tu sitio web de WordPress.

WordPress REST API tiene como objetivo proporcionar una API que se pueda integrar con temas, aplicaciones móviles y más. Permite que WordPress interactúe con cualquier aplicación, y los desarrolladores pueden incluso usarlo para crear sus propias API.

Aquí hay algunas maneras en que puedes aprovecharlo en tus proyectos, todas salidas de ejemplos reales:

  1. Event Espresso utiliza la API REST para proporcionar acceso de desarrollador a su infraestructura interna, lo que hace posible desarrollar aplicaciones basadas en sus servicios.
  2. Simmer, un plugin de recetas de WordPress, permite a los desarrolladores crear sus propias aplicaciones de recetas utilizando su API de desarrollador.

Cómo funciona la API REST de WordPress

Hay muchos tipos de interfaces de programación de aplicaciones (API), pero REST se destaca como un estándar moderno. Funciona manipulando datos textuales de un lugar a otro sin acceso directo a una base de datos o interfaz de usuario.

Las API REST se entregan a través de puntos finales de Protocolo de Transferencia de Hipertexto (HTTP), utilizando el formato de JavaScript Object Notation (JSON). Estos puntos finales representan las publicaciones, páginas y otros tipos de datos de WordPress.

Si nunca antes has trabajado con JavaScript o su notación de objetos, una buena idea es comenzar por aprender los principios básicos de JSON. Esto te ayudará a comprender mejor este tutorial de API REST de WordPress.

Por qué la API REST de WordPress es importante para los desarrolladores

Gracias al formato JSON, la API REST de WordPress permite a WordPress intercambiar datos con otros sitios web y software escritos en cualquier lenguaje de programación. Por lo tanto, los desarrolladores ya no están limitados a PHP, y pueden usar WordPress para manejar los datos a través de REST API.

El enfoque creciente en la API indica un cambio en cuáles son los lenguajes de programación más relevantes para aprender. Debido a que la API REST está basada JavaScript, pronto nos podríamos encontrar con que JavaScript del lado del servidor es el nuevo PHP.

Esto ya se puede ver en el nuevo software de WordPress.com, Calypso, que se ejecuta completamente en JavaScript y la API REST.

Adicionalmente, al estandarizar la forma en que las aplicaciones interactúan con los datos de WordPress, el desarrollo de WordPress será más simple e intuitivo.

Por esa razón, nuestro tutorial de API REST de WordPress está aquí para alentarte a prestar más atención a esta función.

5 pasos para comenzar con la API REST de WordPress

En este tutorial de API REST de WordPress, utilizaremos la interfaz de línea de comandos (CLI) para ejecutar todas las solicitudes. La CLI te permite interactuar fácilmente con la API REST sin tener que escribir scripts adicionales para solicitar y procesar la información.

Lo primero que debes hacer es abrir un programa CLI en tu computadora: Terminal para macOS y Linux, y PuTTY para Windows. Después de eso, copia tu dirección IP compartida o dedicada e inicia sesión con tus credenciales SSH.

También recomendamos usar un sitio de demostración o pruebas locales para este tutorial. Además, asegúrate también de que se ejecute en WordPress versión 4.4 o superior.

Paso 1: Familiarízate con los conceptos clave de la API REST

Comenzaremos nuestro tutorial de API REST de WordPress explicando los conceptos y términos clave:

  • Rutas y Puntos finales. Una ruta es una URL que puedes asignar a diferentes métodos HTTP, mientras que un punto final es una conexión entre un método HTTP individual y una ruta. /wp-json/ es un ejemplo de una ruta y contiene todos los puntos finales correspondientes.
  • Peticiones. Una instancia de WP_REST_Request. Se utiliza para almacenar y recuperar información para la solicitud actual.
  • Respuestas. Proporcionan los datos que solicitaste o devuelven un error que te permite saber qué fue lo que salió mal.
  • Esquemas. Muestra una lista de todas las propiedades y parámetros de entrada que la API REST puede aceptar y devolver.
  • Clases de controlador. El lugar donde administras las partes móviles de la API REST.

Paso 2: Conoce los puntos finales más útiles de la API REST

En esta parte del tutorial de la API REST, te mostraremos varios puntos finales útiles de la API REST que puede probar con su sitio:

  1. En primer lugar, querrás saber cómo construir una llamada HTTP a la API REST. La base de cada llamada a la API REST de WordPress es la siguiente:
    http://tudominio.com/wp-json/
  2. Luego, puedes probar la conexión ejecutando el comando curl en tu CLI:
    curl -X OPTIONS -i http://tudominio.com/wp-json/

    Deberías ver un mensaje de HTTP exitoso:

    HTTP/1.1 200 OK
    Date: Wed, 23 Oct 2019 19:51:41 GMT
    Server: Apache/2.4.29
    X-Robots-Tag: noindex
    Link: <http://yourdomain.com/wp-json/>; rel="https://api.w.org/"
    X-Content-Type-Options: nosniff
    Access-Control-Expose-Headers: X-WP-Total, X-WP-TotalPages
    Access-Control-Allow-Headers: Authorization, Content-Type
    Allow: GET
    Transfer-Encoding: chunked
    Content-Type: application/json; charset=UTF-8
  3. A continuación, puedes repetir este comando utilizando varios de los puntos finales principales. Esta vez, simplemente usaremos la versión GET de curl para obtener una lista JSON de sus publicaciones de WordPress. Para hacerlo, puedes usar el siguiente comando:
    curl -X GET -i http://tudominio.com/wp-json/wp/v2/posts

    Alternativamente, intenta esto para ver todas tus páginas de WordPress existentes:

    curl -X GET -i http://tudominio.com/wp-json/wp/v2/pages

Si deseas ver más ejemplos, la API REST de WordPress ofrece un manual de referencia que contiene muchos puntos finales útiles.

Paso 3: Aprende los conceptos básicos de autenticación de la API REST

Algunas acciones y datos dentro de la API REST son públicos, mientras que otros requieren que inicie sesión como administrador. Sin embargo, dado que es la API REST, no hay ningún lugar para iniciar sesión.

Para solucionar este problema, puedes autenticarte al realizar cualquier llamada que requiera acceso administrativo, como ver contenido no publicado o actualizar una publicación.

Para este tutorial, utilizaremos el plugin Basic Auth de la API REST de WordPress. Es un complemento simple para desarrolladores que te ayuda a conocer la API REST, pero no está destinado a sitios en vivo. Aquí te explicamos cómo instalarlo:

  1. Descargue el plugin de la REST API de WordPress Basic Auth.
  2. Inicia sesión en tu Panel de WordPress y ve a Plugins -> Agregar nuevo. Haz clic en el botón Cargar plugin y selecciona el archivo zip del complemento.
  3. Ve al menú Plugins instalados y activa el plugin desde allí.
  4. Una vez instalado Basic Auth, abre la CLI y autentica una solicitud de API utilizando el indicador user. Aquí hay un ejemplo de cómo aplicar el método de autenticación de usuario, usando curl para ver publicaciones no publicadas::
    curl -X GET --user username:password -i http://tudominio.com/wp-json/wp/v2/posts?status=draft

Ahora que conoce la autenticación básica, puede explorar otros métodos recomendados en la documentación de la API REST.

Paso 4: Selecciona tu primera publicación de WordPress con la API REST

Cuando hayas entendido cómo hacer llamadas básicas a la API REST usando el comando curl, puedes seleccionar una publicación específica:

  1. Primero, enumera todas tus publicaciones como lo hicimos anteriormente:
    curl -X GET -i http://tudominio.com/wp-json/wp/v2/posts
  2. Luego, busca el ID de una publicación que quieras actualizar. Agrega este ID al final de tu consulta para seleccionar solo esa publicación individual:
    curl -X GET -i http://tudominio.com/wp-json/wp/v2/posts/<ID>

Puedes usar esto para seleccionar un ID determinado para cualquier punto final de la API REST, ya sea que quieras ver una publicación, página o taxonomía.

Paso 5: Actualiza tu primera publicación de WordPress con la API REST

Finalmente, intentemos enviar una actualización a la publicación seleccionada. Para este tutorial de la API REST, intentaremos cambiar el nombre del título de nuestra publicación mediante el comando POST. No olvides incluir las credenciales de autenticación.

Los nuevos cambios se compartirán usando la bandera d al final de nuestro comando.

  1. En este ejemplo, pasarás una variable de objeto JavaScript personalizada (título) a un valor personalizado (Mi nuevo título):
    curl -X POST --user username:password http://tudominio.com/wp-json/wp/v2/posts/PostID -d '{"titutlo":"Mi Nuevo Titulo"}'

    Asegúrate de reemplazar el nombre de usuario, la contraseña, el ID de la publicación y el nombre del título con sus propios detalles de WordPress.

  2. Luego, puedes volver a seleccionar la publicación individual para verificar los nuevos cambios:
    curl -X GET -i http://yourdomain.com/wp-json/wp/v2/posts/PostID

¡Felicidades! Acabas de realizar tus primeras ediciones administrativas con la API REST de WordPress.

Conclusión

La API REST de WordPress es una poderosa adición al núcleo de WordPress, y pocos desarrolladores han comenzado a descubrir sus capacidades. En consecuencia, embarcarse ahora y aprender a trabajar con ella puede hacerte más valioso como desarrollador, y te permitirá crear aplicaciones utilizando los servicios de WordPress.

En este tutorial de la API REST de WordPress, has aprendido los cinco pasos importantes para dominar esta función:

  1. Familiarízate con los conceptos clave de la API REST.
  2. Conoce los puntos finales más útiles de la API REST.
  3. Aprende los conceptos básicos de autenticación de la API REST.
  4. Selecciona tu primera publicación de WordPress con la API REST.
  5. Actualiza una publicación de WordPress con la API REST.

Si bien este tutorial de la API REST de WordPress solo rasguña la superficie de sus capacidades, creemos que sigue siendo un buen punto de partida antes de profundizar en él.

¿Tienes alguna pregunta? ¡Háznoslo saber en la sección de comentarios a continuación!

El Autor

Author

Gustavo B. / @gustavohostinger

Gustavo es un apasionado por la creación de sitios web. Se enfoca en la aplicación de estrategias SEO en Hostinger para España y Latinoamérica, así como la creación de contenidos de alto nivel. Cuando no está aplicando nuevos trucos en WordPress lo puedes encontrar tocando la guitarra, viajando o tomando un curso online.

Tutoriales relacionados

Author

Fernando Responder

abril 05 2018

Interesantísimo post, muchas gracias.

Author

Eudys Mora Responder

mayo 31 2018

Hola, ¿la api rest de wordpress permite obtener sliders, google maps y videos de algun sitio web desarrollado en wordpress para mostrarlo en otro sitio web o aplicacion?

    Author

    Gustavo Bustos

    Respondido en junio 11 2018

    "Hola Eudys ¿Cómo te encuentras? Recomiendo que leas los siguientes enlaces para obtener la respuesta específica que buscas: 1) https://developer.wordpress.org/rest-api/ (el manual que lo explica todo, desde cómo funciona hasta lo que hace) 2) Un hilo interesante que puede tener información respecto a los Sliders https://wordpress.org/support/topic/loading-slider-via-rest-api/ 3) Otra opción sería que consultes específicamente a desarrolladores de WordPress en StackOverflow.com"

Author

Miguel Responder

agosto 04 2018

Excelente post y explicación, muchas gracias!

Author

Juan Carlos Salazar Responder

enero 04 2019

Muchas felicitaciones por el Post, está muy claro y con ejemplos precisos, muchas gracias Gustavo B.

Author

Antuan Responder

febrero 01 2019

Teniendo el manual y todos los datos que me ha facilitado la empresa, cómo podría integrar una web del tipo civitatis en mi web a través de la API. Tengo conocimientos de WP. Entiendo que necesito instalar el API REST de WP. Qué pasos hay que seguir, es demasiado complicado? Gracias de antemano.

Author

Christian Responder

julio 25 2019

Muy buena explicación gracias por tu tiempo.

    Author

    Gustavo B.

    Respondido en julio 25 2019

    Hola Christian, gracias por leernos y qué bueno que te haya servido la información :)

Author

Hugo Responder

agosto 18 2019

Buen tema, pero para mi Nivel usuario me sale como un error critico de wordpress al instalar un tema y ni idea como arreglarlo o si en algo afectan... Saludos! La REST API es una forma en que WordPress y otras aplicaciones se comunican con el servidor. Un ejemplo es la pantalla del editor de bloques, que se basa en esto para mostrar y guardar tus publicaciones y páginas. La solicitud a la REST API falló debido a un error. Error: [] cURL error 28: Operation timed out after 10001 milliseconds with 0 bytes received La solicitud de loopback a tu sitio ha fallado. Eso quiere decir que las características que dependan de ello no van a funcionar correctamente. Error: [] cURL error 28: Operation timed out after 10000 milliseconds with 0 bytes received

    Author

    Gustavo B.

    Respondido en septiembre 04 2019

    Hola Hugo, asegúrate de que tu WordPress esté actualizado a la versión más reciente. Y asegúrate de que tu servidor esté ejecutando una versión nueva de la biblioteca PHP y cUrl. Es posible que sea un problema relacionado con el servidor.

Author

Jose Responder

septiembre 07 2019

Hola Gustavo soy estudiante de app Android y iOS, programador y diseñador y tengo un ejercicio que realizar el de crear una api en formato json y añadirle a mi app y monstralo por pantalla he visto el ejemplo de mi profesor y el video pero ahora tengo que hacerlo yo con otra pagina que tenga api abiertas pero me hago un lio la verdad, me esta costando hacer este ejercicio me podrías echar una mano. Este es el enunciado de la pregunta:Después de ver cómo trabajar con los archivos JSON para cargar datos en nuestras aplicaciones, vamos a crear una aplicación para repasar lo aprendido. Para ello crearemos una aplicación como la que hemos visto en la unidad. Buscaremos una web que nos ofrezca datos abiertos en formato JSON y los importaremos a nuestra aplicación para que nos los muestre. En el ejemplo se utilizó una web de servicios meteorológicos que nos daba el clima en tiempo real de cualquier ciudad del mundo. En el ejercicio deberemos cargar los datos de cualquier otra web sea del tema que sea y que nos muestre en nuestra aplicación los datos que nos ofrece esa web.

    Author

    Gustavo B.

    Respondido en diciembre 16 2019

    Hola José, Si lo que quieres es obtener los datos de otra API y no necesariamente codificarla, todo lo que tienes que hacer es llamar a esa API, por ejemplo: abre esto - https://jsonplaceholder.typicode.com/todos/1 puedes ver que inmediatamente obtienes una respuesta. Hay más información sobre como usar estos datos aquí: https://jsonplaceholder.typicode.com/ Ten en cuenta que dependiendo de si es php, iOS o android, las cosas son un poco diferentes.

Deja una respuesta

Comentar*

Nombre*

Correo electrónico*

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

¡Empieza a ser parte de Hostinger hoy!