Ir al contenido principal

Formato de datos de Blueprint

Un archivo JSON de Blueprint puede tener muchas propiedades diferentes que se usarán para definir tu instancia de Playground. Las propiedades más importantes se detallan a continuación.

Este es un ejemplo que usa muchas de ellas:

{
"landingPage": "/wp-admin/",
"preferredVersions": {
"php": "8.3",
"wp": "6.5"
},
"features": {
"networking": true
},
"steps": [
{
"step": "login",
"username": "admin",
"password": "password"
}
]
}

Esquema JSON

Los archivos JSON pueden ser tediosos de escribir y fáciles de equivocarse. Para ayudar con eso, Playground proporciona un archivo de esquema JSON que puedes usar para obtener autocompletado y validación en tu editor. Solo tienes que definir la propiedad $schema así:

{
"$schema": "https://playground.wordpress.net/blueprint-schema.json",
}

Página de destino

La propiedad landingPage indica a Playground a qué URL navegar después de que se haya ejecutado el Blueprint. Es una gran herramienta, especialmente al crear demos de temas o plugins. A menudo querrás iniciar Playground en el Editor del sitio o abrir una entrada específica en el Editor de entradas. Asegúrate de usar una ruta relativa.

{
"landingPage": "/wp-admin/site-editor.php",
}

Versiones preferidas

La propiedad preferredVersions declara tus versiones preferidas de PHP y WordPress. Puede contener las siguientes propiedades:

  • php (string): Carga la versión de PHP especificada. Acepta 7.4, 8.0, 8.1, 8.2, 8.3, 8.4, 8.5 o latest. Las versiones menores como 7.4.1 no son compatibles.
  • wp (string): Carga la versión de WordPress especificada. Acepta las últimas siete versiones principales de WordPress. Al 28 de abril de 2026, son 6.3, 6.4, 6.5, 6.6, 6.7, 6.8 o 6.9. También puedes usar los valores genéricos latest, beta o nightly (alias trunk). beta se resuelve a la Beta o Release Candidate más reciente de un ciclo de lanzamiento activo; nightly/trunk se compila directamente desde la rama de desarrollo de WordPress.
{
"preferredVersions": {
"php": "8.3",
"wp": "6.7"
},
}

Características

Puedes usar la propiedad features para activar o desactivar ciertas características de la instancia de Playground. Puede contener las siguientes propiedades:

  • networking: Su valor predeterminado es true. Activa o desactiva el soporte de red para Playground. Si está activado, wp_safe_remote_get y funciones similares de WordPress usarán realmente fetch() para hacer solicitudes HTTP. Si está desactivado, fallarán de inmediato. Necesitarás esta propiedad activada si quieres que la persona usuaria pueda instalar plugins o temas.
{
"features": {
"networking": false
},
}

Bibliotecas adicionales

Puedes precargar bibliotecas adicionales en la instancia de Playground. Las siguientes bibliotecas son compatibles:

  • wp-cli: Activa el soporte de WP-CLI para Playground. Si se incluye, WP-CLI se instalará durante el arranque. Si no se incluye, recibirás un mensaje de error al intentar ejecutar comandos WP-CLI con la API JS. WP-CLI se instalará de forma predeterminada si el Blueprint contiene cualquier etapa wp-cli.
{
"extraLibraries": [ "wp-cli" ],
}

Etapas

Probablemente la propiedad más potente, steps te permite configurar la instancia de Playground con temas, plugins, contenido de demo y mucho más ya instalado. El siguiente ejemplo inicia sesión con un nombre de usuario y una contraseña dedicados. Luego instala y activa el plugin Gutenberg. Aprende más sobre las etapas.

{
"steps": [
{
"step": "login",
"username": "admin",
"password": "password"
},
{
"step": "installPlugin",
"pluginData": {
"resource": "wordpress.org/plugins",
"slug": "gutenberg"
}
},
]
}

Errores comunes de ubicación de propiedades

Los errores de validación de Blueprint a menudo aparecen al colocar una propiedad válida en el objeto equivocado.

Activar un plugin o tema

activate debe estar dentro de options, no dentro de pluginData, themeData ni directamente en la etapa.

{
"step": "installPlugin",
"pluginData": {
"resource": "wordpress.org/plugins",
"slug": "gutenberg"
},
"options": {
"activate": true
}
}

Instalar plugins con el atajo

El atajo plugins es una propiedad de nivel superior de Blueprint. No lo coloques dentro de preferredVersions.

{
"preferredVersions": {
"php": "8.3",
"wp": "latest"
},
"plugins": ["gutenberg"]
}

Usar una sola forma de instalación de plugin

Para una etapa installPlugin, usa pluginData. No mezcles pluginData con ejemplos antiguos u objetos personalizados como pluginZipFile.

{
"step": "installPlugin",
"pluginData": {
"resource": "wordpress.org/plugins",
"slug": "woocommerce"
},
"options": {
"activate": true
}
}

El recurso wordpress.org/plugins necesita un slug separado. No escribas el slug dentro del valor de resource, como "wordpress.org/plugins/woocommerce".

Mantener preferredVersions limitado a versiones

preferredVersions solo acepta php y wp. Usa features para networking, plugins o installPlugin para plugins, y steps para tareas de configuración ordenadas.

Usar etapas explícitas cuando importa el orden

Atajos como plugins, login, siteOptions y constants se expanden antes del array steps. Si una acción debe ocurrir antes que otra, escribe ambas acciones como etapas explícitas en el orden que necesitas.