wordpress/wp-rest-api

Úselo al crear, extender o depurar endpoints/rutas de la API REST de WordPress: register_rest_route, clases WP_REST_Controller/controller, validación de esquemas/argumentos, permission_callback/autenticación, modelado de respuestas, register_rest_field/register_meta, o exponer CPTs/taxonomías mediante show_in_rest.

¿Qué es wp-rest-api?

Esta habilidad está diseñada para asistentes de IA (como Claude Code, Cursor o Codex) que trabajan con la API REST de WordPress. Proporciona las mejores prácticas, ejemplos de código y referencias de funciones clave (register_rest_route, clases de controladores, validación de esquemas, callbacks de permisos, modelado de respuestas, register_rest_field/register_meta) para construir, extender y depurar endpoints personalizados. Es útil para desarrolladores que necesitan exponer tipos de contenido personalizados (CPTs) y taxonomías a través de la API REST, implementar autenticación y autorización, o dar forma a las respuestas de la API. La habilidad se basa en la documentación oficial de WordPress y garantiza una implementación segura y eficiente de la API REST de WordPress.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/wordpress/agent-skills/tree/main/skills/wp-rest-api

Installed? Explore more Productividad y colaboración skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

¿Qué hace wp-rest-api?

Úselo al crear, extender o depurar endpoints/rutas de la API REST de WordPress: register_rest_route, clases WP_REST_Controller/controller, validación de esquemas/argumentos, permission_callback/autenticación, modelado de respuestas, register_rest_field/register_meta, o exponer CPTs/taxonomías mediante show_in_rest.

¿Qué es?

Esta habilidad ayuda a los asistentes de IA a trabajar con la API REST de WordPress, proporcionando orientación sobre las mejores prácticas para definir rutas, validar datos, gestionar permisos y dar forma a las respuestas de la API.

Funcionalidades clave

  • Registro de rutas: Usar register_rest_route para definir endpoints personalizados.
  • Controladores: Extender WP_REST_Controller para una estructura de código reutilizable.
  • Validación de esquemas: Definir esquemas de argumentos con tipos, valores predeterminados y callbacks de validación/sanitización.
  • Callbacks de permisos: Implementar permission_callback para control de acceso.
  • Modelado de respuestas: Devolver objetos WP_REST_Response con códigos de estado y datos correctos.
  • Campos y metadatos personalizados: Usar register_rest_field y register_meta para exponer campos adicionales.
  • CPTs y taxonomías: Habilitar show_in_rest para exponer tipos de contenido personalizados y taxonomías.

Plataformas compatibles

  • Claude Code
  • Cursor
  • Codex
  • Cualquier editor o terminal compatible con asistentes de IA.

Cómo usarlo

Simplemente incluya esta habilidad en la configuración de su asistente de IA (archivo .cursorrules en Cursor, archivo CLAUDE.md en Claude Code, o mediante código en Codex).

Ejemplo

// Registrar un endpoint personalizado
add_action('rest_api_init', function () {
    register_rest_route('mi-plugin/v1', '/items/(?P<id>\d+)', array(
        'methods' => 'GET',
        'callback' => 'mi_plugin_get_item',
        'permission_callback' => function () {
            return current_user_can('edit_posts');
        },
        'args' => array(
            'id' => array(
                'validate_callback' => function($param, $request, $key) {
                    return is_numeric($param);
                }
            )
        )
    ));
});

Notas importantes

  • Siempre use callbacks de validación y sanitización para evitar vulnerabilidades de seguridad.
  • Los controladores extendidos de WP_REST_Controller facilitan el mantenimiento y la reutilización del código.
  • Para exponer metadatos, use register_meta con show_in_rest establecido en true.
  • Consulte la documentación oficial de la API REST de WordPress para obtener más detalles.

Individual skills in this repo

This repo contains 13 individual skills — each has its own dedicated page.

wordpress/blueprint

Use when creating, editing, or reviewing WordPress Playground blueprint JSON files. Triggers on mentions of blueprints, playground configuration, or requests to set up a WordPress demo environment.

wordpress/wordpress-router

Use when the user asks about WordPress codebases (plugins, themes, block themes, Gutenberg blocks, WP core checkouts) and you need to quickly classify the repo and route to the correct workflow/skill (blocks, theme.json, REST API, WP-CLI, performance, security, testing, release packaging).

wordpress/wp-abilities-api

Use when working with the WordPress Abilities API (wp_register_ability, wp_register_ability_category, /wp-json/wp-abilities/v1/*, @wordpress/abilities) including defining abilities, categories, meta, REST exposure, and permissions checks for clients.

wordpress/wp-block-development

Use when developing WordPress (Gutenberg) blocks: block.json metadata, register_block_type(_from_metadata), attributes/serialization, supports, dynamic rendering (render.php/render_callback), deprecations/migrations, viewScript vs viewScriptModule, and @wordpress/scripts/@wordpress/create-block build and test workflows.

wordpress/wp-block-themes

Use when developing WordPress block themes: theme.json (global settings/styles), templates and template parts, patterns, style variations, and Site Editor troubleshooting (style hierarchy, overrides, caching).

wordpress/wpds

Use when building UIs leveraging the WordPress Design System (WPDS) and its components, tokens, patterns, etc.

wordpress/wp-interactivity-api

Use when building or debugging WordPress Interactivity API features (data-wp-* directives, @wordpress/interactivity store/state/actions, block viewScriptModule integration, wp_interactivity_*()) including performance, hydration, and directive behavior.

wordpress/wp-performance

Use when investigating or improving WordPress performance (backend-only agent): profiling and measurement (WP-CLI profile/doctor, Server-Timing, Query Monitor via REST headers), database/query optimization, autoloaded options, object caching, cron, HTTP API calls, and safe verification.

wordpress/wp-phpstan

Use when configuring, running, or fixing PHPStan static analysis in WordPress projects (plugins/themes/sites): phpstan.neon setup, baselines, WordPress-specific typing, and handling third-party plugin classes.

wordpress/wp-playground

Use for WordPress Playground workflows: fast disposable WP instances in the browser or locally via @wp-playground/cli (server, run-blueprint, build-snapshot), auto-mounting plugins/themes, switching WP/PHP versions, blueprints, and debugging (Xdebug).

wordpress/wp-plugin-development

Use when developing WordPress plugins: architecture and hooks, activation/deactivation/uninstall, admin UI and Settings API, data storage, cron/tasks, security (nonces/capabilities/sanitization/escaping), and release packaging.

wordpress/wp-project-triage

Use when you need a deterministic inspection of a WordPress repository (plugin/theme/block theme/WP core/Gutenberg/full site) including tooling/tests/version hints, and a structured JSON report to guide workflows and guardrails.

wordpress/wp-wpcli-and-ops

Use when working with WP-CLI (wp) for WordPress operations: safe search-replace, db export/import, plugin/theme/user/content management, cron, cache flushing, multisite, and scripting/automation with wp-cli.yml.

Skills relacionados