Start a clean WordPress instance with the selected runtime.
Start or resume a Playground
A single paper deck owns saved sites, launch routes, blueprints, tools, settings, files, database, and logs.
Test a WordPress core pull request in the browser.
Launch with a Gutenberg pull request or branch name.
Mount a theme or plugin from a GitHub repository.
Paste a blueprint JSON URL and boot exactly that recipe.
Restore a previously exported Playground archive.
Changes in the current session are not saved to browser storage until the Save button completes.
Saved 18 minutes ago - PHP 8.3 - WP latest
Saved yesterday - WooCommerce blueprint
Saved May 19 - Gutenberg PR 71422
Your changes will be lost on page refresh unless you save this site locally.
Type reset playground to confirm this destructive action.
<?php
define( 'DB_NAME', 'database_name_here' );
define( 'DB_USER', 'username_here' );
define( 'DB_PASSWORD', 'password_here' );
define( 'DB_HOST', 'localhost' );
define( 'WP_DEBUG', true );
if ( ! defined( 'ABSPATH' ) ) {
define( 'ABSPATH', __DIR__ . '/' );
}
require_once ABSPATH . 'wp-settings.php';
{
"$schema": "https://playground.wordpress.net/blueprint-schema.json",
"meta": {
"title": "Playground Welcome Landing Page",
"author": "WordPress Playground"
},
"login": true,
"landingPage": "/hello-from-playground/",
"preferredVersions": {
"php": "8.3",
"wp": "latest"
},
"steps": [
{ "step": "runPHP", "code": "<?php update_option('blogname', 'My WordPress Website');" }
]
}
WordPress Playground emulates MySQL using SQLite. Database tools are a work in progress.
| Table | Rows | Size | Last change |
|---|---|---|---|
| wp_options | 238 | 184 KB | 10:18 UTC |
| wp_posts | 16 | 92 KB | 10:16 UTC |
| wp_postmeta | 64 | 116 KB | 10:16 UTC |
| wp_users | 1 | 24 KB | 10:12 UTC |
This is the canonical settings surface. Applying these values resets WordPress to its initial state.
Booting Playground
Applying blueprint, mounting files, refreshing iframe