Pular para o conteúdo principal

Formato de dados do Blueprint

Um arquivo JSON de Blueprint pode ter várias propriedades diferentes que serão usadas para definir sua instância do Playground. As propriedades mais importantes são detalhadas abaixo.

Este é um exemplo que usa várias delas:

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

Esquema JSON

Arquivos JSON podem ser tediosos de escrever e fáceis de errar. Para ajudar com isso, o Playground fornece um arquivo de esquema JSON que você pode usar para ter preenchimento automático e validação no editor. Basta definir a propriedade $schema assim:

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

Página inicial

A propriedade landingPage informa ao Playground para qual URL navegar depois que o Blueprint for executado. Ela é uma ótima ferramenta, especialmente ao criar demonstrações de temas ou plugins. Muitas vezes, você vai querer iniciar o Playground no Editor do site ou abrir um post específico no Editor de posts. Use sempre um caminho relativo.

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

Versões preferenciais

A propriedade preferredVersions declara suas versões preferenciais do PHP e do WordPress. Ela pode conter as seguintes propriedades:

  • php (string): Carrega a versão especificada do PHP. Aceita 7.4, 8.0, 8.1, 8.2, 8.3, 8.4, 8.5 ou latest. Versões menores como 7.4.1 não são compatíveis.
  • wp (string): Carrega a versão especificada do WordPress. Aceita as últimas sete versões principais do WordPress. Em 28 de abril de 2026, são 6.3, 6.4, 6.5, 6.6, 6.7, 6.8 ou 6.9. Você também pode usar os valores genéricos latest, beta ou nightly (alias trunk). beta resolve para a versão Beta ou Release Candidate mais recente de um ciclo de lançamento ativo; nightly/trunk é criado diretamente a partir do branch de desenvolvimento do WordPress.
{
"preferredVersions": {
"php": "8.3",
"wp": "6.7"
},
}

Recursos

Você pode usar a propriedade features para ativar ou desativar determinados recursos da instância do Playground. Ela pode conter as seguintes propriedades:

  • networking: O padrão é true. Ativa ou desativa o suporte a rede no Playground. Se ativado, wp_safe_remote_get e funções semelhantes do WordPress usarão fetch() para fazer requisições HTTP. Se desativado, elas falharão imediatamente. Você precisará ativar essa propriedade se quiser que a pessoa usuária possa instalar plugins ou temas.
{
"features": {
"networking": false
},
}

Bibliotecas extras

Você pode pré-carregar bibliotecas extras na instância do Playground. As seguintes bibliotecas são compatíveis:

  • wp-cli: Ativa o suporte a WP-CLI no Playground. Se incluída, a WP-CLI será instalada durante a inicialização. Se não for incluída, você receberá uma mensagem de erro ao tentar executar comandos WP-CLI usando a API JS. A WP-CLI será instalada por padrão se o Blueprint contiver qualquer etapa wp-cli.
{
"extraLibraries": [ "wp-cli" ],
}

Etapas

Provavelmente a propriedade mais poderosa, steps permite configurar a instância do Playground com temas, plugins, conteúdo de demonstração e muito mais pré-instalados. O exemplo a seguir autentica o usuário com um nome de usuário e senha dedicados. Em seguida, instala e ativa o plugin Gutenberg. Saiba mais sobre etapas.

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

Erros comuns de posicionamento de propriedades

Erros de validação de Blueprint geralmente acontecem quando uma propriedade válida é colocada no objeto errado.

Ativar um plugin ou tema

activate deve ficar dentro de options, não dentro de pluginData, themeData nem diretamente na etapa.

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

Instalar plugins com o atalho

O atalho plugins é uma propriedade de nível superior do Blueprint. Não o coloque dentro de preferredVersions.

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

Usar um único formato de instalação de plugin

Para uma etapa installPlugin, use pluginData. Não misture pluginData com exemplos antigos ou objetos personalizados como pluginZipFile.

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

O recurso wordpress.org/plugins precisa de um slug separado. Não escreva o slug no valor de resource, como "wordpress.org/plugins/woocommerce".

Manter preferredVersions limitado a versões

preferredVersions aceita somente php e wp. Use features para rede, plugins ou installPlugin para plugins, e steps para tarefas de configuração ordenadas.

Usar etapas explícitas quando a ordem importa

Atalhos como plugins, login, siteOptions e constants são expandidos antes do array steps. Se uma ação precisa acontecer antes de outra, escreva ambas como etapas explícitas na ordem necessária.