API de Query
O WordPress Playground expõe uma API simples que você pode usar para configurar o Playground no navegador.
Ela funciona passando opções de configuração como parâmetros de consulta (query) para a URL do Playground. Por exemplo, para instalar o tema pendant, você usaria a seguinte URL:
https://playground.wordpress.net/?theme=pendant
Você pode testar isso agora mesmo. O Playground instalará automaticamente o tema e fará login como administrador. Você pode até incorporar essa URL no seu site usando uma tag <iframe>:
<iframe src="https://playground.wordpress.net/?theme=pendant"></iframe>
Opções disponíveis
| Opção | Valor padrão | Descrição |
|---|---|---|
php | 8.5 | Carrega a versão especificada do PHP. Aceita 7.4, 8.0, 8.1, 8.2, 8.3, 8.4, 8.5 ou latest. |
wp | latest | Carrega a versão especificada do WordPress. Aceita as três últimas versões principais do WordPress. A partir de 1º de junho de 2024, isso significa 6.3, 6.4 ou 6.5. Você também pode usar os valores genéricos latest, nightly ou beta. |
blueprint-url | A URL do Blueprint usada para configurar esta instância do Playground. | |
networking | yes | Ativa ou desativa o suporte a rede no Playground. Aceita yes ou no. |
plugin | Instala o plugin especificado. Use o nome do plugin conforme aparece na URL do Diretório de Plugins do WordPress. Por exemplo, se a URL for https://wordpress.org/plugins/wp-lazy-loading/, o nome do plugin seria wp-lazy-loading. Você pode pré-instalar vários plugins com plugin=coblocks&plugin=wp-lazy-loading&…. Instalar um plugin faz login automático como admin. Mais de um plugin pode ser instalado repetindo o atributo plugin na URL. | |
theme | Instala o tema especificado. Use o nome do tema conforme aparece na URL do Diretório de Temas do WordPress. Por exemplo, se a URL for https://wordpress.org/themes/disco/, o nome do tema seria disco. Instalar um tema faz login automático como admin. Vários temas podem ser instalados repetindo o atributo theme na URL. | |
url | /wp-admin/ | Carrega a página inicial do WordPress especificada nesta instância do Playground. |
mode | browser-full-screen | Determina como a instância do WordPress é exibida: envolta em uma interface de navegador ou em largura total para uma experiência contínua. Aceita browser-full-screen ou seamless. |
lazy | Adia o carregamento dos assets do Playground até alguém clicar no botão "Executar". Não aceita valores. Se lazy for adicionado como parâmetro de URL, o carregamento será adiado. | |
login | yes | Faz login do usuário como admin. Aceita yes ou no. |
multisite | no | Ativa o modo multisite do WordPress. Aceita yes ou no. |
import-site | Importa arquivos do site e banco de dados a partir de um arquivo ZIP especificado por uma URL. | |
import-wxr | Importa conteúdo do site a partir de um arquivo WXR especificado por uma URL. Usa o plugin WordPress Importer, então o usuário admin padrão deve estar logado. | |
site-slug | Seleciona qual site carregar do armazenamento do navegador. Se o site especificado não existir, o usuário será solicitado a salvar um novo site com o slug especificado. | |
language | en_US | Define o idioma da instância do WordPress. Deve ser usado em conjunto com networking=yes; caso contrário o WordPress não conseguirá baixar traduções. |
core-pr | Instala um PR específico do core em https://github.com/WordPress/wordpress-develop. Aceita o número do PR. Por exemplo, core-pr=6883. | |
gutenberg-pr | Instala um PR específico do Gutenberg em https://github.com/WordPress/gutenberg. Aceita o número do PR. Por exemplo, gutenberg-pr=65337. | |
gutenberg-branch | Instala um branch específico de https://github.com/WordPress/gutenberg. Aceita o nome do branch. Por exemplo, gutenberg-branch=trunk. | |
page-title | Personaliza o título da aba do navegador. Útil para identificar diferentes instâncias do Playground ao trabalhar com várias abas. O parâmetro é preservado ao navegar entre sites. | |
can-save | Por padrão o Playground pode ser salvo no computador ou no navegador do usuário. Para desativar a possibilidade de salvar, adicione ?can-save=no, e as opções de salvar serão removidas da interface. | |
mcp | no | Inicia o bridge do servidor MCP (Model Context Protocol), permitindo que clientes MCP externos conectem e controlem a instância do Playground. Aceita yes ou no. |
mcp-port | 7999 | Define a porta WebSocket usada pelo bridge MCP para comunicar com o servidor MCP. Deve ser usado junto com mcp=yes. Por exemplo, mcp=yes&mcp-port=8080. |
overlay | Abre uma sobreposição de interface ao carregar a página. Atualmente suporta blueprints para abrir a Galeria de Blueprints diretamente. Por exemplo, ?overlay=blueprints. O parâmetro é removido da URL quando a sobreposição é fechada. |
Por exemplo, o código a seguir incorpora um Playground com o plugin Gutenberg pré-instalado e abre o editor de posts:
<iframe src="https://playground.wordpress.net/?plugin=gutenberg&url=/wp-admin/post-new.php&mode=seamless"> </iframe>
Política de CORS
Para importar arquivos de uma URL, como um pacote zip de site, eles devem ser servidos com o cabeçalho Access-Control-Allow-Origin configurado. Para referência, veja: Cross-Origin Resource Sharing (CORS).
Opções de exportação para o GitHub
Os seguintes parâmetros de consulta adicionais podem ser usados para pré-configurar o formulário de exportação para o GitHub:
gh-ensure-auth: Se definido comoyes, o Playground exibirá um modal para garantir que o usuário esteja autenticado com o GitHub antes de prosseguir.ghexport-repo-url: A URL do repositório GitHub para exportação.ghexport-pr-action: A ação a ser tomada ao exportar (criar ou atualizar).ghexport-playground-root: O diretório raiz no Playground de onde exportar.ghexport-repo-root: O diretório raiz no repositório para onde exportar.ghexport-content-type: O tipo de conteúdo da exportação (plugin, theme, wp-content, custom-paths).ghexport-plugin: Caminho do plugin. Quando o tipo de conteúdo forplugin, pré-seleciona o plugin a ser exportado.ghexport-theme: Nome do diretório do tema. Quando o tipo de conteúdo fortheme, pré-seleciona o tema a ser exportado.ghexport-path: Um caminho relativo aghexport-playground-root. Pode ser fornecido múltiplas vezes. Quando o tipo de conteúdo forcustom-paths, pré-preenche a lista de caminhos a exportar.ghexport-commit-message: A mensagem de commit a ser usada na exportação.ghexport-allow-include-zip: Se deve oferecer uma opção para incluir um arquivo zip na exportação para o GitHub (yes,no). Opcional. O padrão éyes.