lunes, 26 Oct 2026

Recursos y herramientas exclusivas para expertos en diseño y desarrollo web

Explorar
BiblioWeb

Biblioweb.es

Todo sobre tecnología web

  • Inicio
  • WordPress
    WordPress
    • Todo sobre WordPress26
    • Plugins de WordPress16
    • Desarrollo web y plugins15
    Rendimiento y seguridad
    • Hosting y rendimiento8
    • Ciberseguridad web7
    • Solución de errores5
    Negocio e IA
    • IA y automatización10
    • WooCommerce y tiendas online6
    Lo último
    Restaurant Menu Widget — Plugin de WordPress27 Sep 2026JetStudio Bookings — Plugin de WordPress27 Sep 2026SC Heatmap — Plugin de WordPress27 Sep 2026
    Ver el blog completoHistorial de noticiasSobre nosotrosNewsletter semanal
  • Plugins de WordPress
    Fichas de plugins
    • WP Translate Master
    • Cart Tool Kit
    • SC Heatmap
    • JetStudio Bookings
    • Restaurant Menu Widget
    • WP SEO Pro
    • Rank Math SEO en 2026
    • WP Rocket
    • WPCode
    • AI Engine para WordPress
    Comparativas y guías
    • Los mejores plugins SEO para WordPress
    • Los mejores plugins de IA para WordPress
    • Los mejores plugins de reservas para WordPress
    • WordPress multiidioma
    • Cómo crear un formulario de contacto en WordPress
    • Stripe o PayPal
    Por temática
    • Plugins de WordPress16
    • WooCommerce y tiendas online6
    • Desarrollo web y plugins15
    • IA y automatización10
    • Hosting y rendimiento8
    BibliotecaPluginteca

    Los plugins de WordPress que desarrollamos: qué hace cada uno, cómo se ve en acción y dónde conseguirlo.

    Entrar en la Pluginteca
    Toda la categoría Plugins de WordPressHerramientas gratis
  • Herramientas
    Herramientas gratis, sin registro y desde el navegador
    Generador de contraseñasContraseñas largas y aleatorias sin salir del navegador.Generador de QRCódigos QR en PNG de alta resolución, sin caducidad.Contador de palabrasPalabras, caracteres y tiempo de lectura en vivo.Formateador JSONFormatea, valida y localiza el error exacto.Conversor a WebPPNG, JPG y PDF a WebP para que la web cargue…PDF a WebPCada página del PDF, en una imagen ligera.Comprobador de emailsSintaxis, correos temporales y registros MX.Compresor de vídeoBaja el peso del vídeo sin subirlo a ningún servidor.Vídeo a MP3Extrae el audio de un vídeo en un par de clics.Firmas de emailFirma en HTML lista para Gmail y Outlook.
    También te sirveHerramientas externas que merecen la pena

    DNS Checker, Query Monitor, Local WP y el resto del kit que usamos a diario, con para qué sirve cada una.

    Ver la selección
    Todas las herramientasPlugintecaRecíbelas por correo
  • Pluginteca
  • Español ✓
  • English
  • 🇨🇳 中文(简体)
  • Français
  • Deutsch
  • Italiano
Newsletter
  • WordPress
  • Plugins de WordPress
  • WooCommerce
  • IA para WordPress
  • Seguridad
  • Herramientas gratis
  • Ver todo
BiblioWebBiblioWeb
Redimensionador de fuentesAa
  • WordPress
  • Plugins
  • WooCommerce
  • Errores
  • Herramientas
Buscar
  • Inicio
  • WordPress
    • Todo sobre WordPress
    • Plugins de WordPress
    • Desarrollo Web y Plugins
    • IA y Automatización web
    • WooCommerce
    • Hosting y Rendimiento Web
    • Ciberseguridad y Seguridad Web
    • Solución de errores web
  • Plugins de WordPress
    • Rank Math SEO
    • AI Engine
    • WP Rocket
    • WPCode
    • WP Translate Master
    • Cart Tool Kit
    • SC Heatmap
    • JetStudio Bookings
    • Restaurant Menu Widget
    • WP SEO Pro
  • Herramientas
    • Generador de Contraseñas
    • Generador de Código QR
    • Contador de Palabras
    • Formateador JSON
    • Conversor Imagenes a WebP
    • Comprobador de Correos Electrónicos
    • Compresor de Vídeo para Web
    • Generador de Firmas de Email
    • Convertidor de Vídeo a MP3
    • Conversor de PDF a WebP
  • Pluginteca
  • Blog
    • Español ✓
    • English
    • 🇨🇳 中文(简体)
    • Français
    • Deutsch
    • Italiano
Síguenos
© 2026 BiblioWeb — Todos los derechos reservados.
Portada » Blog » La REST API de WordPress: qué es y cómo usarla
Desarrollo Web y Plugins

La REST API de WordPress: qué es y cómo usarla

Adrián Alcalá
Actualizado: 28/09/2026 12:43
Por Adrián Alcalá
Compartir
14 min de lectura
La REST API de WordPress: qué es y cómo usarla
COMPARTIR

Tu WordPress no es solo una web: también es un servidor de datos. Desde la versión 4.7, la REST API de WordPress viene integrada en el núcleo y expone entradas, páginas, usuarios, medios y taxonomías en formato JSON, listos para ser leídos o modificados desde cualquier aplicación externa: una app móvil, un script de automatización, otra web o un panel de control a medida. Es la tecnología que hace funcionar el editor de bloques, la que usan miles de integraciones y la puerta de entrada al llamado WordPress «headless». Y, sin embargo, muchos usuarios avanzados no la han explorado nunca. En esta guía práctica veremos qué es exactamente la REST API de WordPress, cómo están organizados sus endpoints, cómo autenticarte de forma segura con Application Passwords, cómo leer y crear contenido con ejemplos reales (desde el navegador, con JavaScript y con PHP), cómo crear tus propios endpoints y qué precauciones de seguridad conviene tomar. Todo con código funcional que puedes probar hoy en tu propia web.

Índice
Qué es la REST API de WordPress y para qué sirveEndpoints principales: el mapa de la APIAutenticación con Application PasswordsLeer y crear contenido: ejemplos con JavaScriptCrear tus propios endpoints con register_rest_routeSeguridad: qué exponer y qué protegerPreguntas frecuentesConclusión

Qué es la REST API de WordPress y para qué sirve

Una API REST es una interfaz que permite a dos sistemas comunicarse sobre HTTP usando las operaciones clásicas del protocolo: GET para leer, POST para crear, PUT/PATCH para actualizar y DELETE para borrar. La respuesta llega en JSON, un formato de texto ligero que cualquier lenguaje entiende. En el caso de WordPress, eso significa que todo lo que gestionas desde el escritorio (entradas, páginas, comentarios, categorías, usuarios, medios) tiene también una «puerta trasera» estructurada y oficial para máquinas.

Casos de uso reales donde la REST API de WordPress marca la diferencia:

  • Automatización: publicar o actualizar contenido desde scripts, hojas de cálculo o herramientas como n8n y Make.
  • Headless WordPress: usar WordPress solo como gestor de contenido y montar el frontend con React, Vue o Astro.
  • Apps móviles: la app oficial de WordPress funciona íntegramente sobre esta API.
  • Integraciones entre webs: mostrar en una web los últimos artículos de otra, sincronizar catálogos, centralizar publicación.
  • Paneles a medida: dashboards que leen y escriben en WordPress sin pasar por wp-admin.

La API es también la base de integraciones modernas con inteligencia artificial: plugins como AI Engine, que convierte tu WordPress en un agente de IA, se apoyan en ella para exponer el contenido a asistentes externos.

Endpoints principales: el mapa de la API

Todo empieza en una URL: https://tudominio.com/wp-json/. Ábrela en el navegador y verás el índice completo de rutas disponibles. Los endpoints del núcleo cuelgan del espacio de nombres wp/v2:

Endpoint Contenido
/wp-json/wp/v2/posts Entradas del blog
/wp-json/wp/v2/pages Páginas
/wp-json/wp/v2/media Biblioteca de medios
/wp-json/wp/v2/categories Categorías
/wp-json/wp/v2/tags Etiquetas
/wp-json/wp/v2/users Usuarios (datos públicos)
/wp-json/wp/v2/comments Comentarios
/wp-json/wp/v2/search Búsqueda global

Cada endpoint de colección admite parámetros de consulta muy útiles: ?per_page=5 limita resultados, ?search=wordpress busca, ?categories=12 filtra por categoría, ?orderby=date&order=asc ordena y ?_fields=id,title,link devuelve solo los campos que pidas, aligerando la respuesta. Para un elemento concreto se añade su ID: /wp-json/wp/v2/posts/123.

También te podría interesar

Herramientas internas para agencias web: cuándo y cómo crearlas
Cómo conectar Google Sheets con WordPress
Shortcodes de WordPress: qué son y cómo crear los tuyos
Los 5 plugins esenciales de WordPress para principiantes

Las respuestas JSON de WordPress llegan sin formato, en una sola línea difícil de leer. Un truco de flujo de trabajo: pega la respuesta en nuestro formateador y validador JSON gratuito y tendrás el árbol indentado y coloreado para inspeccionarlo con comodidad.

Paginación: las cabeceras que debes conocer

Los endpoints de colección devuelven como máximo 100 elementos por petición (10 por defecto). Para recorrer catálogos grandes, la API incluye en cada respuesta dos cabeceras HTTP: X-WP-Total, con el número total de elementos, y X-WP-TotalPages, con el número de páginas disponible según tu per_page. Basta con iterar añadiendo ?page=2, ?page=3 y así sucesivamente hasta alcanzar la última. Si pides una página inexistente, la API responde con un error 400 con el código rest_post_invalid_page_number, una señal cómoda para detener el bucle en scripts de exportación o migración.

Autenticación con Application Passwords

Leer contenido público no requiere identificarse, pero crear, editar o borrar sí. Desde WordPress 5.6 el método integrado y recomendado son las Application Passwords (contraseñas de aplicación): claves específicas por aplicación, revocables individualmente y que no exponen tu contraseña real.

Para crear una: entra en Usuarios → Perfil, baja hasta «Contraseñas de aplicación», escribe un nombre descriptivo (por ejemplo «Script de publicación») y pulsa crear. WordPress te mostrará una sola vez una clave con el formato xxxx xxxx xxxx xxxx xxxx xxxx. Guárdala en un gestor de contraseñas o en un fichero de variables de entorno, nunca en el código fuente.

La clave se usa con autenticación HTTP Basic: usuario y contraseña de aplicación codificados en Base64 en la cabecera Authorization. Requisito imprescindible: la web debe servirse por HTTPS, porque en HTTP plano las credenciales viajarían expuestas.

Prueba rápida desde la terminal con curl:

curl -X POST https://tudominio.com/wp-json/wp/v2/posts \
  -u "tu_usuario:xxxx xxxx xxxx xxxx xxxx xxxx" \
  -H "Content-Type: application/json" \
  -d '{"title":"Borrador desde la API","status":"draft"}'

Si la respuesta es un JSON con el ID del nuevo borrador, la autenticación funciona. Cada permiso depende del rol del usuario: una contraseña de aplicación de un suscriptor no podrá publicar entradas.

Leer y crear contenido: ejemplos con JavaScript

Veamos la API en acción con fetch, tal y como lo harías en una web externa o una aplicación. Primero, leer los últimos artículos de un blog (sin autenticación, contenido público):

const API = 'https://tudominio.com/wp-json/wp/v2';

async function ultimasEntradas() {
  const res = await fetch(`${API}/posts?per_page=5&_fields=id,title,link,date`);
  if (!res.ok) {
    throw new Error('Error HTTP ' + res.status);
  }
  const posts = await res.json();
  posts.forEach((post) => {
    console.log(`${post.date} — ${post.title.rendered} — ${post.link}`);
  });
}

ultimasEntradas();

Y ahora, crear una entrada autenticándonos con una Application Password (esto debe ejecutarse en un entorno servidor o script privado, nunca en el navegador de tus visitantes, porque expondría la clave):

const usuario = 'tu_usuario';
const clave   = 'xxxx xxxx xxxx xxxx xxxx xxxx';
const token   = Buffer.from(`${usuario}:${clave}`).toString('base64');

async function crearEntrada() {
  const res = await fetch('https://tudominio.com/wp-json/wp/v2/posts', {
    method: 'POST',
    headers: {
      'Authorization': `Basic ${token}`,
      'Content-Type': 'application/json',
    },
    body: JSON.stringify({
      title: 'Publicado por la REST API',
      content: '<p>Este contenido lo ha creado un script.</p>',
      status: 'draft',
      categories: [12],
    }),
  });
  const data = await res.json();
  if (!res.ok) {
    throw new Error(data.message || 'Error al crear la entrada');
  }
  console.log('Creada con ID', data.id, '→', data.link);
}

crearEntrada();

Fíjate en el detalle de title.rendered al leer: la API devuelve los campos de texto como objetos con las variantes rendered (HTML final) y, si estás autenticado con permisos de edición y añades ?context=edit, también raw (contenido original).

Crear tus propios endpoints con register_rest_route

La API del núcleo cubre el contenido estándar, pero el verdadero potencial llega cuando expones datos propios. Con register_rest_route() puedes crear rutas personalizadas bajo tu propio espacio de nombres. Ejemplo completo: un endpoint que devuelve estadísticas básicas del sitio, con un parámetro validado y control de permisos:

<?php
add_action( 'rest_api_init', function () {
    register_rest_route( 'biblioweb/v1', '/estadisticas', array(
        'methods'             => 'GET',
        'callback'            => 'biblioweb_api_estadisticas',
        'permission_callback' => '__return_true', // Endpoint público de solo lectura.
        'args'                => array(
            'tipo' => array(
                'default'           => 'post',
                'sanitize_callback' => 'sanitize_key',
                'validate_callback' => function ( $valor ) {
                    return post_type_exists( $valor );
                },
            ),
        ),
    ) );
} );

function biblioweb_api_estadisticas( WP_REST_Request $request ) {
    $tipo     = $request->get_param( 'tipo' );
    $conteo   = wp_count_posts( $tipo );
    $usuarios = count_users();

    return rest_ensure_response( array(
        'tipo'        => $tipo,
        'publicados'  => (int) $conteo->publish,
        'borradores'  => (int) $conteo->draft,
        'usuarios'    => (int) $usuarios['total_users'],
        'generado_en' => current_time( 'mysql' ),
    ) );
}

Tras guardar este código (en un plugin o snippet), tu nuevo endpoint responde en https://tudominio.com/wp-json/biblioweb/v1/estadisticas?tipo=page. Tres reglas de oro: usa siempre un espacio de nombres propio con versión (biblioweb/v1), define permission_callback explícitamente (es obligatorio desde WordPress 5.5; para endpoints privados usa una comprobación como current_user_can( 'edit_posts' )) y valida cada parámetro de entrada. La referencia completa está en el manual oficial de la REST API de WordPress.

Seguridad: qué exponer y qué proteger

La REST API de WordPress es segura por diseño (solo expone lo que ya es público y exige permisos para escribir), pero conviene ajustar algunos detalles:

  • Enumeración de usuarios: el endpoint /wp/v2/users lista autores con contenido publicado, lo que facilita a un atacante conocer nombres de usuario válidos. Muchos plugins de seguridad lo restringen; también puede filtrarse por código para requerir autenticación.
  • HTTPS obligatorio: sin certificado SSL, las Application Passwords viajan en claro. No hay excepción razonable a esta regla.
  • Principio de mínimo privilegio: crea las contraseñas de aplicación con un usuario cuyo rol tenga solo los permisos que la integración necesita, y revócalas cuando dejen de usarse.
  • No desactives la API a lo bruto: el editor de bloques y muchos plugins dependen de ella. Si quieres limitarla, exige autenticación con el filtro rest_authentication_errors en lugar de bloquearla por completo.
  • Limita la superficie: los endpoints personalizados públicos deben devolver solo datos que no te importe que sean visibles para cualquiera.

Estas precauciones encajan dentro de una estrategia general de endurecimiento; si quieres repasarla, tenemos una guía con trucos para reforzar la seguridad de tu WordPress.

Preguntas frecuentes

¿La REST API de WordPress está activa en mi web?

Casi con total seguridad, sí: viene activada de serie desde WordPress 4.7 (2016). Compruébalo visitando tudominio.com/wp-json/: si ves un JSON con el nombre de tu sitio y el listado de rutas, está operativa. Si devuelve un 404, revisa los enlaces permanentes o algún plugin de seguridad que la esté bloqueando.

¿Es peligroso tener la API activada?

No más que tener la web publicada. La API de lectura solo expone contenido que ya es público en tu web, y toda operación de escritura exige autenticación y permisos. Los dos ajustes sensatos son restringir el listado de usuarios y asegurarte de servir todo por HTTPS. Desactivarla por completo suele causar más problemas de los que evita.

¿Puedo usar la API con custom post types y campos personalizados?

Sí. Los custom post types aparecen en la API si se registraron con show_in_rest => true, y obtienen su propio endpoint (por ejemplo /wp/v2/proyecto). Los campos personalizados se exponen con register_post_meta() marcando también show_in_rest, o con el campo meta de la propia entrada si el plugin que los crea lo soporta.

¿Qué diferencia hay entre la REST API y WPGraphQL?

La REST API es el estándar del núcleo: cada tipo de dato tiene su endpoint y las respuestas tienen estructura fija. GraphQL (vía el plugin WPGraphQL) permite pedir exactamente los campos que necesitas en una sola consulta, lo que gusta en proyectos headless complejos. Para automatizaciones, integraciones y la mayoría de proyectos, la REST API es más simple, no requiere plugins y está soportada oficialmente.

Conclusión

La REST API de WordPress convierte tu web en una plataforma programable: un índice claro de endpoints bajo /wp-json/wp/v2/, autenticación integrada con Application Passwords sobre HTTPS y la posibilidad de ampliar el mapa con rutas propias mediante register_rest_route(). Con lo visto en esta guía puedes leer contenido público desde cualquier aplicación, publicar y editar mediante scripts autenticados, exponer datos a medida con validación y permisos, y hacerlo con las precauciones de seguridad adecuadas. El mejor camino para interiorizarla es práctico: abre tudominio.com/wp-json/wp/v2/posts?per_page=3 en el navegador, pasa la respuesta por un formateador JSON para entender su estructura, crea tu primera Application Password y lanza un borrador desde curl. En quince minutos habrás cruzado la puerta que separa usar WordPress de programar con WordPress.

Compartir este artículo
Correo electrónico Copiar enlace Imprimir
PorAdrián Alcalá
Síguele:
Adrián Alcalá es desarrollador WordPress y consultor SEO, autor del plugin WP Translate y creador de BiblioWeb. Desde aquí comparte guías, tutoriales y herramientas gratuitas para quienes crean, optimizan y posicionan páginas web. Lleva años ayudando a negocios de toda España a sacar el máximo partido a WordPress, y todo lo que publica está probado en proyectos reales.
Artículo anterior Custom Post Types en WordPress: guía completa Custom Post Types en WordPress: guía completa
Artículo siguiente Los mejores plugins de caché para WordPress Los mejores plugins de caché para WordPress
Ilustración del plugin Restaurant Menu Widget: carta de restaurante con platos y precios editables en Elementor
Restaurant Menu Widget — Plugin de WordPress
Plugins de WordPress
Ilustración del plugin JetStudio Bookings: formulario de citas por pasos con calendario y bandeja de solicitudes
JetStudio Bookings — Plugin de WordPress
Plugins de WordPress
Ilustración del plugin SC Heatmap: mapa de calor de clics y scroll sobre una web, con los datos en tu servidor
SC Heatmap — Plugin de WordPress
Plugins de WordPress
Accesibilidad web en WordPress con IA
Accesibilidad web en WordPress: auditarla con IA en una tarde
IA & Automatización web

También te puede interesar

Hooks de WordPress: actions y filters explicados
Desarrollo Web y Plugins

Hooks de WordPress: qué son los actions y filters

08/08/2026
Custom Post Types en WordPress: guía completa
Desarrollo Web y Plugins

Custom Post Types en WordPress: guía completa

08/08/2026
Qué es un child theme de WordPress y cómo crearlo
Desarrollo Web y Plugins

Qué es un child theme en WordPress y cómo crearlo

08/08/2026
Instalar Yoast SEO - Adiós al Caos SEO Instala Yoast SEO en WordPress y Activa tu Superpoder para Google (Guía Rápida y Div
Desarrollo Web y Plugins

Cómo instalar y configurar Yoast SEO en WordPress

28/09/2026
Mostrar más
  • Temas:
  • WordPress
  • Plugins de WordPress
  • Desarrollo Web y Plugins
  • IA & Automatización web
  • Hosting & Rendimiento Web
  • Ciberseguridad y Seguridad Web
  • WooCommerce
  • Solución de problemas y errores web
BiblioWeb

Biblioweb.es

Actualidad de tecnología web

Información en la que puedes confiar: guías y soluciones prácticas de tecnología web — WordPress, plugins, ciberseguridad, hosting, rendimiento y solución de errores.

Rss

Enlaces de interés

  • Sobre nosotros
  • Contacto
  • Herramientas gratuitas
  • Pluginteca

Recibe nuestras nuevas guías de WordPress en tu correo. Suscríbete a la newsletter.

Legal

  • Aviso Legal
  • Términos y Condiciones
  • Política de cookies
  • Política de Privacidad

Últimas novedades

Ilustración del plugin Restaurant Menu Widget: carta de restaurante con platos y precios editables en Elementor

Restaurant Menu Widget — Plugin de WordPress

27/09/2026
Seguir leyendo
Ilustración del plugin JetStudio Bookings: formulario de citas por pasos con calendario y bandeja de solicitudes

JetStudio Bookings — Plugin de WordPress

27/09/2026
Seguir leyendo

© 2026 BiblioWeb — Todos los derechos reservados.

Gestionar consentimiento
Utilizamos tecnologías como las cookies para almacenar y/o acceder a la información del dispositivo. Lo hacemos para mejorar la experiencia de navegación y para mostrar anuncios (no) personalizados. El consentimiento a estas tecnologías nos permitirá procesar datos como el comportamiento de navegación o los ID's únicos en este sitio. No consentir o retirar el consentimiento, puede afectar negativamente a ciertas características y funciones.
Funcional Siempre activo
El almacenamiento o acceso técnico es estrictamente necesario para el propósito legítimo de permitir el uso de un servicio específico explícitamente solicitado por el abonado o usuario, o con el único propósito de llevar a cabo la transmisión de una comunicación a través de una red de comunicaciones electrónicas.
Preferencias
El almacenamiento o acceso técnico es necesario para la finalidad legítima de almacenar preferencias no solicitadas por el abonado o usuario.
Estadísticas
El almacenamiento o acceso técnico que es utilizado exclusivamente con fines estadísticos. El almacenamiento o acceso técnico que se utiliza exclusivamente con fines estadísticos anónimos. Sin un requerimiento, el cumplimiento voluntario por parte de tu proveedor de servicios de Internet, o los registros adicionales de un tercero, la información almacenada o recuperada sólo para este propósito no se puede utilizar para identificarte.
Marketing
El almacenamiento o acceso técnico es necesario para crear perfiles de usuario para enviar publicidad, o para rastrear al usuario en una web o en varias web con fines de marketing similares.
  • Administrar opciones
  • Gestionar los servicios
  • Gestionar {vendor_count} proveedores
  • Leer más sobre estos propósitos
Ver preferencias
  • {title}
  • {title}
  • {title}
Accede a BiblioWeb
Usuario o correo electrónico
Contraseña

¿Has olvidado tu contraseña?