Playground Meetings Summaries – February 2026

This post covers the two Playground meetings held in February 2026. These are bi-weekly chats where contributors to WordPress Playground gather to discuss updates, ongoing work, and plans for current and future releases. All are welcome to join.

Meeting 1 – February 13, 2026

Facilitator: Fellyph Cintra

Announcements

Three posts worth highlighting from the past weeks:

  • wp-env now runs WordPress with Playground runtime — WordPress Playground is now available in wp-env as an alternative to Docker.
  • What’s new for developers? (February 2026) — A roundup of developer-focused updates from the beginning of the year, including several Playground highlights.
  • WordPress Studio 1.7.0 received substantial CLICLI Command Line Interface. Terminal (Bash) in Mac, Command Prompt in Windows, or WP-CLI for WordPress. updates — nearly every feature is now controllable from the command line, improving compatibility with AI-assisted development tools such as Claude Code and Cursor.

Documentation

Three documentation pull requests landed since the last meeting:

  • #3188 — Refreshes screenshots and rewrites content for the web instance page to reflect the latest UIUI UI is an acronym for User Interface - the layout of the page the user interacts with. Think ‘how are they doing that’ and less about what they are doing..
  • #3242 — Updates the “Host Your Own Playground” self-hosting page with current instructions and improved clarity.
  • #3103 — Adds a new beginner-friendly “Playground for Everyone” guide explaining what WordPress Playground is and how anyone can use it.

Translations

New translations were added for Bengali and Japanese. Thank you to @noruzzaman and @shimomura tomoki for their contributions.

  • #3177 — Updates translations.md for multiple languages.
  • #3249, #3230, #3229, #3231 — Bengali translations for several guides and documentation pages.
  • #3228 — Japanese translations for developer architecture, PHPPHP PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML. https://www.php.net/manual/en/preface.php., and browser-concepts pages.

Other notable changes

  • Website — A new URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org route enables deep-linking directly to the Blueprint Gallery overlay using the ?overlay=blueprints parameter.
  • CLI — A new --phpmyadmin flag spins up a phpMyAdmin instance for inspecting and managing the SQLite database from the command line.
  • Blueprints — Removed an unnecessary dependency on @php-wasm/web from the blueprints package, reducing bundle size and decoupling the two packages.
  • Safari — Multiple improvements shipped following community feedback shared on X.

In total, 32 pull requests were merged since the last meeting.

Updates from contributors

  • Fellyph Cintra — Researching the migrationMigration Moving the code, database and media files for a website site from one server to another. Most typically done when changing hosting companies. of Playground documentation to the .org Handbook, documenting the process of integrating Playground with code agents, and submitting a new skill for blockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. pattern creation to the WordPress repository.
  • Brandon Payton — Continuing work on making multi-worker mode non-experimental in the Playground CLI, with expanded test coverage now running on Windows, macOS, and Linux.
  • Jan Jakes (@janjakes) — Added phpMyAdmin support to the Playground CLI. Try it with npx @wp-playground/cli@latest server --phpmyadmin. An overview post on the SQLite side is also coming soon.
  • Adam Zieliński — Working on importing WordPress sites between hosts, which will enable moving sites between Playground instances and hosted environments.

Open floor

Fellyph shared a demo of WordPress Playground used together with Claude Code and the DevTools MCP server, highlighting how Claude Code decides whether to fix code directly or use the Site Editor to fulfill requests. The team is curious to hear from the community: are you using Playground with code agents, and what has your experience been like?

If you are interested in contributing to the documentation migration to the .org Handbook, reach out to Fellyph directly via SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/. DM.


Meeting 2 – February 27, 2026

Facilitator: Fellyph Cintra

Announcements

The team is currently investigating stability issues affecting WordPress Playground with WordPress 7.0 BetaBeta A pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process. and GutenbergGutenberg The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/ v22.6.0. Two related pull requests are in progress:

  • #3312 — Avoids cross-origin policy errors in the editor.
  • #3301 — Fixes a blank /wp-admin page caused by responses crossing the Comlink worker boundary.

Thanks to everyone who reported issues — your feedback helped with the investigation. More fixes are expected in the coming days.

Two posts were published this week:

WordPress 7.0 Beta 2 is now available for testing on WordPress Playground. If you encounter any issues, please report them on GitHubGitHub GitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged by the repository owner. https://github.com/.

Project updates

22 pull requests have been merged since the last meeting. New feature work was paused to focus on WordPress 7.0 stability investigations.

CLI

  • #3288 — Removes a duplicated “Playground CLI Ready” log line to keep startup output clean.
  • #3238 — Detects “port already in use” errors and returns a clear, actionable message.
  • #3150 — Fixes Windows native file-locking issues in the multi-threaded CLI architecture.

PHP.wasm

  • #3287 — Adds PHP function names and refactors the test suite to improve coverage and maintainability.
  • #3234 — Adds a cp (copy) method to Universal PHP for file duplication via the PHP.wasm filesystem APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways..

Translations

New translations were added for Bengali and Japanese. Thank you to @noruzzaman and @shimomura tomoki for their continued contributions.

Documentation

Updates from contributors

  • Fellyph Cintra — Migrating the documentation to the .org Handbook, working on the Agent Skill guide and the two CLI posts. Started testing Playground with Claude Code and Gemini HooksHooks In WordPress theme and development, hooks are functions that can be applied to an action or a Filter in WordPress. Actions are functions performed when a certain event occurs in WordPress. Filters allow you to modify certain functions. Arguments used to hook both filters and actions look the same.; a post about it is coming soon.
  • Jan Jakes (@janjakes) — Improving the agentic experience and setup for Playground and SQLite integration, and investigating performance and memory consumption.
  • Yannick Decat — Compiling PHP.wasm with MAIN_MODULE=2 to reduce .wasm and .js file sizes, and implementing path mappings and path skipping in Xdebug 3.5. Also experimenting with Xdebug in the browser.
  • Bero — Working on an MCP server for the Playground website, including WebMCP support.
  • Adam Zieliński — The WordPress site migrator is working. Next steps include URL rewriting for cross-domain moves and Playground integration.

Open floor

The team discussed what tools would be most useful in an MCP server for Playground. If you have ideas, share them in the comments below or on the relevant GitHub pull requests.

The next Playground chat will be on March 10th in the #playground Slack channel. All are welcome to join.

Simplify your workflow with the new Playground CLI start command

Setting up a local WordPress environment should be as simple as running a single command. We are excited to introduce the new start command in the WordPress Playground CLICLI Command Line Interface. Terminal (Bash) in Mac, Command Prompt in Windows, or WP-CLI for WordPress., simplifying how you run your local environments.

A simpler way to start

The WordPress Playground CLI is a powerful tool for running WordPress in your terminal. The command server allows users to customize the Playground instance at several levels, but those customizations can be daunting for users who want to run a WordPress instance with a theme/pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party. With the introduction of the high-level start command (introduced in PR #3040), you can launch a local WordPress instance more intuitively.

Instead of configuring complex parameters, you can now run:

npx @wp-playground/cli start

This command automatically configures the environment with sensible defaults, so you can focus on building.

Persistence by default

The most significant update in this release is persistence (PR #3119). Previously, closing the CLI meant losing your database and file changes unless you manually configured mounts. This update is a major milestone toward simplifying the WordPress development ecosystem. By adding persistence and a high-level entry point, the Playground CLI achieves feature parity with wp-now.

Now, the start command automatically saves your site’s state in your home directory (~/.wordpress-playground/sites/). This ensures your plugins, themes, and content are preserved between sessions. You can stop your server and resume exactly where you left off.

Quick reset for a fresh start

Sometimes, you need to start over. If you want to wipe your persisted site and begin with a clean installation, use the --reset flag:

npx @wp-playground/cli start --reset

Other flags are available for the `start` command:

  • --blueprint — Execute a Blueprint file to preconfigure your site with plugins, themes, settings, and content.
  • --php — Choose your PHPPHP PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML. https://www.php.net/manual/en/preface.php. version. Supported versions: 7.4, to 8.5. Defaults to 8.3.
  • --wp — Set the WordPress version. Defaults to latest.
  • --port — Define the port for the local server. Defaults to 9400.
  • --login — Automatically log in to the WordPress dashboard on launch.

Get started

The start command is available now in the latest version of @wp-playground/cli. Whether you’re testing a new plugin or building a theme, the Playground CLI provides a lightweight, zero-config environment directly in your terminal.

To learn more, check the Playground CLI documentation.

Manage your database directly from the Playground CLI

Need to inspect WordPress data, debug a query, or check if a pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party saved options correctly? The Playground CLICLI Command Line Interface. Terminal (Bash) in Mac, Command Prompt in Windows, or WP-CLI for WordPress. now includes a --phpmyadmin flag that launches phpMyAdmin alongside your local WordPress instance. No extra setup, no separate database server, just one command.

Where is your data?

When developing locally with Playground CLI, you often need to verify what the database actually contains. Until now, doing that required writing custom PHPPHP PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML. https://www.php.net/manual/en/preface.php. queries or adding debug output to your code.

The --phpmyadmin flag solves this by giving you a full phpMyAdmin interface right from the CLI.

Getting started

Add --phpmyadmin to your regular CLI command:

npx @wp-playground/cli@latest server --phpmyadmin

After WordPress boots, the CLI prints the phpMyAdmin URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org:

WordPress Playground CLI

PHP 8.3  WordPress latest
Extensions intl

Ready! WordPress is running on http://127.0.0.1:9400 (11 workers)

phpMyAdmin available at http://127.0.0.1:9400/phpmyadmin/index.php?route=/database/structure&db=wordpress

Open that URL in your browser, and you get full access to browse tables, run SQL queries, and inspect your WordPress data:

Custom URL path

By default, phpMyAdmin serves at /phpmyadmin. Change this path to anything you prefer:

npx @wp-playground/cli@latest server --phpmyadmin=/my-db

This serves phpMyAdmin at http://127.0.0.1:9400/my-db/index.php instead.

Combine with other CLI flags

The --phpmyadmin flag works alongside all existing CLI options:

Test a plugin and inspect its database changes

npx @wp-playground/cli@latest server --phpmyadmin --auto-mount

Run this from your plugin directory. Playground mounts your plugin automatically, and phpMyAdmin lets you verify the database tables and options your plugin creates.

Pin a specific WordPress and PHP version

npx @wp-playground/cli@latest server --phpmyadmin --wp=latest --php=8.5

Useful when you need to check how your plugin handles data across different WordPress versions.

Use a Blueprint with phpMyAdmin

npx @wp-playground/cli@latest server --phpmyadmin --blueprint=my-blueprint.json

Combine Blueprints with phpMyAdmin to pre-configure your WordPress instance and then inspect the resulting database state.

Cache phpMyAdmin for faster starts

Each time you use --phpmyadmin, Playground downloads and installs phpMyAdmin into the instance. To skip the download on subsequent runs, mount a local directory to cache the files:

mkdir -p ./pma-cache
npx @wp-playground/cli@latest server --phpmyadmin --mount ./pma-cache:/tools/phpmyadmin

The first run populates ./pma-cache with the phpMyAdmin files. On every subsequent run, Playground detects the existing installation and skips the download.

Where this helps

Here are some practical scenarios where --phpmyadmin saves time:

  • Plugin development: Verify that your plugin creates the correct custom tables and stores data in the expected format.
  • Debugging options: Check wp_options directly to confirm your plugin settings saved correctly, without writing get_option() debug code.
  • Content migrationMigration Moving the code, database and media files for a website site from one server to another. Most typically done when changing hosting companies. testing: Import content via a Blueprint and verify the resulting posts, terms, and metadata in the database.
  • Learning WordPress internals: Explore how WordPress organizes its database tables — see how posts relate to postmeta, how taxonomies link to terms, and how user data connects across tables.
  • SQL query testing: Run raw SQL queries against your test data before embedding them in your plugin code.

How it works under the hood

phpMyAdmin installs at /tools/phpmyadmin on the virtual filesystem — outside the WordPress document root at /wordpress. The CLI uses a path alias (similar to NginxNGINX NGINX is open source software for web serving, reverse proxying, caching, load balancing, media streaming, and more. It started out as a web server designed for maximum performance and stability. In addition to its HTTP server capabilities, NGINX can also function as a proxy server for email (IMAP, POP3, and SMTP) and a reverse proxy and load balancer for HTTP, TCP, and UDP servers. https://www.nginx.com/.’s alias directive) to serve it at your chosen URL path. This design keeps phpMyAdmin files separate from your WordPress installation, so they never appear in site exports or interfere with your project files.

Since Playground uses SQLite instead of MySQLMySQL MySQL is a relational database management system. A database is a structured collection of data where content, configuration and other options are stored. https://www.mysql.com/., phpMyAdmin connects through a custom MySQL-on-SQLite driver that translates queries between the two dialects.

Share your feedback

The phpMyAdmin integration in the CLI came from the same effort that brought the Database panel to the Playground web interface. If you run into issues or have suggestions, share them on the Making WordPress Slack or open an issue on GitHub.

Props to @JanJakes for reviewing this post.

wp-env now runs WordPress with Playground runtime

wp-env is one of the alternatives to run a WordPress Environment; by default, it uses Docker. What if you could run a full WordPress development environment without installing Docker? With the new experimental Playground runtime for wp-env, you can.

One command. Zero Docker. Full WordPress:

npx @wordpress/env start --runtime=playground

This launches a complete WordPress environment in seconds using Node.js.

Why does this matter?

The Playground runtime offers a lightweight alternative for WordPress development. No extra software installation required; if you have Node.js, you’re ready to go.

What makes the Playground runtime appealing:

  • Zero additional installation – Just Node.js, no Docker setup needed
  • Lightweight bundle – WordPress Playground runs lean with minimal resource usage
  • Fast startup – Get a running WordPress instance in seconds
  • Works everywhere Node.js runs – Linux, macOS, Windows, CI pipelines

What works in both runtimes?

The good news: most wp-env features work identically in both runtimes. Here’s the official comparison:

FeatureDockerPlayground
PluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party/theme mounting
Custom PHPPHP PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML. https://www.php.net/manual/en/preface.php. versions
Xdebug support
MultisiteMultisite Multisite is a WordPress feature which allows users to create a network of sites on a single WordPress installation. Available since WordPress version 3.0, Multisite is a continuation of WPMU or WordPress Multiuser project. WordPress MultiUser project was discontinued and its features were included into WordPress core.https://codex.wordpress.org/Create_A_Network.✅ (experimental)
MySQLMySQL MySQL is a relational database management system. A database is a structured collection of data where content, configuration and other options are stored. https://www.mysql.com/. database❌ (SQLite)
phpMyAdmin❌ (planned)
SPX profiling
Separate tests environment
wp-env run command

The Playground runtime uses SQLite instead of MySQL. For most WordPress development, you won’t notice the difference; your plugins and themes work the same way.

Multisite support is available but hasn’t been extensively tested yet, so treat it as experimental for now.

phpMyAdmin is not yet supported in the Playground runtime. Once it becomes available in the Playground CLICLI Command Line Interface. Terminal (Bash) in Mac, Command Prompt in Windows, or WP-CLI for WordPress., wp-env will integrate it. You can already use phpMyAdmin directly with the Playground CLI:

npx @wp-playground/cli server --phpmyadmin              # serves at http://127.0.0.1:9400/phpmyadmin
npx @wp-playground/cli server --phpmyadmin=/custom-path # serves at http://127.0.0.1:9400/custom-path

What about my existing configuration?

The Playground runtime supports most existing .wp-env.json configuration files:

{
  "core": "WordPress/WordPress#6.8",
  "plugins": ["./my-plugin"],
  "themes": ["./my-theme"],
  "phpVersion": "8.2"
}

This configuration works with both runtimes. Once you start wp-env with a specific runtime, wp-env remembers your choice. Subsequent commands wp-env stop automatically use the same runtime. To switch runtimes, destroy the environment with wp-env destroy and start fresh with your preferred runtime flag.

When should you still use Docker?

The Playground runtime is experimental. Choose Docker when you need:

  • A separate test environment – Docker’s wp-env creates an isolated instance for running tests
  • The wp-env run command – Execute arbitrary commands inside the environment
  • MySQL database – Some plugins require MySQL-specific features that SQLite doesn’t support
  • SPX profiling – Performance profiling with the SPX extension
  • SSHSSH Secure SHell - a protocol for securely connecting to a remote system in addition to or in place of a password. access – Shell into the environment directly

For development workflows that require deep environment access, running WP-CLIWP-CLI WP-CLI is the Command Line Interface for WordPress, used to do administrative and development tasks in a programmatic way. The project page is http://wp-cli.org/ https://make.wordpress.org/cli/ commands inside the environment, debugging PHP processes, or customizing the server stack, Docker remains the right choice.

Resources:

Share your feedback

This feature is experimental, and your feedback shapes its direction. Does it work for your workflow? What’s missing? What breaks?

Share your experience at #playground SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/. channel.

Props to Riad Benguella(@youknowriad) for announcing and advocating this feature, and to Jan Jakeš(@janjakes) for his work on phpMyAdmin and the Playground CLI.

WordPress Playground Team Meeting Summary: January 23, 2026

Facilitator: @fellyph

The Playground team held its weekly meeting on January 23, 2026, in the  #playground SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/. channel. Here’s a summary of the discussion.

Announcements

PHPPHP PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML. https://www.php.net/manual/en/preface.php. version support update: WordPress Playground has dropped support for PHP 7.2 and 7.3. While this change is scheduled for WordPress 7.0, Playground has implemented it early. See the Playground blog for details.

AI agent skills: @bpayton has created an Agent Skill for testing WordPress applications on Playground. An announcement post is in progress. The team encourages community testing and contributions. Additionally, Automattic has released a set of Agent Skills, including one for Playground.

Newsletter: The Playground blog now offers a newsletter subscription. Sign up via the form on the blog sidebarSidebar A sidebar in WordPress is referred to a widget-ready area used by WordPress themes to display information that is not a part of the main content. It is not always a vertical column on the side. It can be a horizontal rectangle below or above the content area, footer, header, or any where in the theme. to receive updates.

Contributors: The Playground project now has 53 members with the Playground Contributor Badge.

Translations: Thanks to @noruzzaman for submitting Bengali pages and @Béryl for reviewing French translations. Contact @fellyph if you want to get involved.

Project Updates

  • Personal Playground: @akirk is developing Personal Playground, a new feature currently in review. Feedback is welcome on the PR.
  • PHP synchronous connect(): A PR simplifies connection logic for Asyncify builds by replacing asynchronous approaches with synchronous connections.
  • Node.js upgrade: The project has upgraded from Node.js 20 to 22, enabling package updates.
  • Agent documentation: The project has added a CLAUDE.md file. The team discussed renaming it to AGENTS.md for broader compatibility with tools like Gemini CLICLI Command Line Interface. Terminal (Bash) in Mac, Command Prompt in Windows, or WP-CLI for WordPress., Cursor, and Copilot. The proposed solution is to use AGENTS.md as the main file with CLAUDE.md referencing it.
  • Image optimization: @fellyph updated all PNG images in the documentation to WebP, reducing image sizes by 78%.

Updates from Contributors

  • @zieladam: Helping @akirk review and merge the “My WordPress” project before February. Shipped Redis and Memcached extensions and added native DNSDNS DNS is an acronym for Domain Name System - how you assign a human readable address to a website’s exact numeric coded location (ie. wordpress.org uses the actual IP address 198.143.164.252). resolution for the JSPI Node.js flavor of Playground.
  • @fellyph: Working on CSSCSS CSS is an acronym for cascading style sheets. This is what controls the design or look and feel of a site. improvements and CSS tokens for the Playground website. Created a PR to add translation credit footers.
  • @bph: Published two blog posts for theme developers:
  • @bpayton: Working on stabilizing the experimental multi-workers feature to remove the “experimental” flag and improve default performance.

Open Floor

The team briefly discussed CSS tokens and whether anyone has used the CSS tokens from @wordpress/theme.

The next Playground meeting is scheduled for the 13th of February 2026. Join the conversation at #playground Slack channel.

#meeting

WordPress Playground removes support for PHP 7.2 and 7.3

WordPress Playground no longer supports PHPPHP PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML. https://www.php.net/manual/en/preface.php. 7.2 and 7.3. The minimum PHP version is now 7.4.

Your existing Blueprints will continue to work. If a Blueprint requests PHP 7.2 or 7.3, Playground automatically upgrades it to PHP 7.4 and displays a warning. No action is required, but you should update your Blueprints when convenient.

Why now?

Three factors drove this decision:

  • WordPress CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. is moving forward. WordPress 7.0 (releasing April 2026) drops support for PHP 7.2 and 7.3. These versions now power less than 4% of WordPress sites combined—well below the 5% threshold the project uses for version support decisions.
  • These versions don’t work reliably in Playground. PHP 7.2 crashes after a minute or two of use. PHP 7.3 runs noticeably slower than newer versions. These issues existed for months without user reports, confirming low adoption.  Also, they don’t seem to work with the PROXYFS mmap implementation
  • Maintenance takes time away from improvements. Supporting older PHP versions requires workarounds that delay features everyone can use—like fixing the intl extension crash.

What you need to do

For most users: nothing. Playground handles the migrationMigration Moving the code, database and media files for a website site from one server to another. Most typically done when changing hosting companies. automatically. Blueprint compilation requires PHP 7.4 or later; a warning will be displayed to remove it and update your Blueprint to load a supported version. If you are using the modular loaders, versions 7.2 and 7.3 will not receive updates.

Supported PHP versions

Playground now supports PHP 7.4 through PHP 8.5:

VersionStatus
PHP 7.4Supported (minimum)
PHP 8.0Supported
PHP 8.1Supported
PHP 8.2Supported
PHP 8.3Supported (recommended)
PHP 8.4Supported
PHP 8.5Supported

Use latest In your Blueprint, always get the most recent stable PHP version.

Timeline

This change takes effect immediately in WordPress Playground. The automatic upgrade ensures backward compatibility—your existing Blueprints won’t break.

WordPress Core follows in April 2026 with WordPress 7.0, which sets PHP 7.4 as the minimum required version.

Questions?

Reach out in the #playground channel on WordPress.org Slack or open a GitHub issue.

Playground meeting summary: January 9, 2026

This post summarizes the first Playground team meeting of 2026, held on January 9, 2026, in the  #playground SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/. channel.

Announcements

UIUI UI is an acronym for User Interface - the layout of the page the user interacts with. Think ‘how are they doing that’ and less about what they are doing. Updates
Three UI improvements shipped in December based on community feedback:

  • Unsaved Playground warning – alerts users before losing work
  • Launch WordPress Playground panel – new dedicated panel for launching instances
  • Quick links – fast access to frequently visited pages

Read the full post (also available in Portuguese).

PHPPHP PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML. https://www.php.net/manual/en/preface.php.-WASM Package Split
WordPress Playground now offers individual php-wasm packages for each PHP version (7.2–8.5). This modular approach allows developers to load only the PHP version they need, reducing bandwidth. Existing code remains compatible. Learn more.

Blueprints Library Preview
The internal blueprints library now includes visual previews, allowing users to see blueprint results directly from Playground before launching.

Dynamic CJS Imports
Dynamic imports for published CommonJS modules are now available.

Standalone BlockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. Demo Page
A new standalone demo page (playground-block-demo.html) brings the Playground Block pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party’s functionality to playground.wordpress.net. Features include:

  • Multi-file project editing (PHP, JS, JSX via esbuild-wasm)
  • Real-time WordPress previews
  • URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org parameter configuration for full-page and embedded views

Documentation
New translations added: Bengali (@noruzzaman), Portuguese (@André Ribeiro), and Japanese (@shimomura tomoki).

Community
Contributor badges awarded to @SirLouen, @Mehraz Morshed, and @Sohilbhai Ghanchivahora.

Contributor Updates

@fellyph shared progress on:

  • A PHP learning tool using php-wasm
  • Documentation updates for non-developers, including two new guides: “WordPress Playground for non-developers” and “Testing themes and plugins”
  • Video guides for runCLI and GitGit Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency. Git is easy to learn and has a tiny footprint with lightning fast performance. Most modern plugin and theme development is being done with this version control system. https://git-scm.com/. Actions (PRs under review)
  • UI screenshot updates and front-end cleanups

Open Floor

The team asked: What would you like to see in Playground in 2026?

A Lighter, More Modular WordPress Playground: Understanding the php-wasm Package Split

PHPPHP PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML. https://www.php.net/manual/en/preface.php. WASM now supports individual packages for each PHP version from 7.4 through 8.5. All old code still works, but if you want to save bandwidth, you can now use a specific PHP WASM version package.

The Architecture: Universal, Loaders, and Builds

@php-wasm/universal is the coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. package that powers both Node.js and browser environments. Here’s how it fits:

  • @php-wasm/universal: This is the “brain.” It contains everything familiar to both Node.js and the browser, managing the filesystem, handling .ini entries, and defining the core PHP class.
  • @php-wasm/node / @php-wasm/web: These are the “loaders.” They handle the environment-specific setup (like loading the WASM file from disk in Node vs. fetching it in the browser) and pass it to the universal core.

The Challenge: Hitting the Ceiling

When you install @php-wasm/node, you get everything: the runtime tools plus WebAssembly binaries for every supported PHP version. As we expanded support from PHP 7.4 to 8.5, this bundle became so big that the WebAssembly binaries exceeded npm’s 100 MB size limit.

To solve this, we split the PHP versions from the “heavy lifting”:

  • The Tools: The main packages (@php-wasm/node and @php-wasm/web) still work as usual.
  • The Builds: We separated the binaries into dedicated packages like @php-wasm/node-8.4 or @php-wasm/web-8.5 for lightweight solutions.

With this split, you download only the PHP versions you need—saving bandwidth and disk space for your applications.

Seeing it in Action

This modularity produces consistent code across Node.js and browser environments.

Classic Way (via @php-wasm/web)

Here is how you initialize PHP for the Web using the classic structure:

npm install @php-wasm/web
import { PHP } from '@php-wasm/universal';
import { loadWebRuntime } from '@php-wasm/web';

const php = new PHP(await loadWebRuntime('8.4'));

const response = await php.runStream({ code: `<?php echo "Hello World";` });
console.log(await response.stdoutText);

This approach handles Xdebug, emscriptenOptions, and other advanced features automatically.

Version-Specific Way (via @php-wasm/web-8-4)

For maximum control and minimal dependencies, use the version-specific package directly:

npm install @php-wasm/web-8-4
import { PHP, loadPHPRuntime } from "@php-wasm/universal";
import { getPHPLoaderModule } from "@php-wasm/web-8-4";

const loaderModule = await getPHPLoaderModule();
const runtimeId = await loadPHPRuntime(loaderModule);
const php = new PHP(runtimeId);

const response = await php.runStream({ code: `<?php echo "Hello World";` });
console.log(await response.stdoutText);

This approach bypasses @php-wasm/web entirely, making it perfect for lightweight applications. However, if you need Xdebug or custom emscriptenOptions, you’ll need to configure them manually.

In both cases, @php-wasm/universal provides the standard PHP class that orchestrates execution, while the version-specific package provides a lighter bundle and lower disk usage.

Same Pattern for Node.js

The same approaches work for Node.js—just swap @php-wasm/web for @php-wasm/node:

import { PHP } from '@php-wasm/universal';
import { loadNodeRuntime } from '@php-wasm/node';

const php = new PHP(await loadNodeRuntime('8.4'));

Dependency & Installation Overhead

The most significant improvement is the reduction in node_modules size. The classic approach required installing every supported PHP version, whereas the version-specific approach is targeted.

MetricClassic Way (@php-wasm/web)Version-Specific Way (@php-wasm/web-8-4)Improvement
Packages Installed@php-wasm/web + 9 PHP runtimesOnly @php-wasm/web-8-4-9 packages
Disk Usage~530 MB~63 MB~88% Reduction

Note: The classic package includes runtimes for PHP 7.4, 8.0, 8.1, 8.2, 8.3, 8.4, and 8.5.

Why This Matters

The modular architecture solves the NPM size limit and improves the codebase:

  1. Faster CI/CD: Pipelines download only the PHP versions they need.
  2. Lighter applications: Version-specific packages for a minimal footprint.
  3. Better tree-shaking: Modern bundlers like Vite and ESBuild can eliminate unused code.

Getting Started

Choose your approach based on your needs:

Classic (full features):

npm install @php-wasm/web

Version-specific (minimal footprint):

npm install @php-wasm/web-8-4

Check the PHP WASM documentation for detailed setup instructions. Tell us what you think of this new alternative for working with PHP WASM, and share your feedback in the #playground SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/. channel.

Props to @akirk and @yannickdecat for reviewing the post.

Three New UI Updates to WordPress Playground from December 2025

The Playground team listened to your feedback and rolled out three UIUI UI is an acronym for User Interface - the layout of the page the user interacts with. Think ‘how are they doing that’ and less about what they are doing. improvements this month: one-click saving for playground instances, quick access to frequently visited pages, and a dedicated view for managing WordPress instances.

1. A Dedicated panel for better management

Saved playgrounds moved from the settings panel to a dedicated dashboard with its own landing page at playground.wordpress.net.

When you visit playground.wordpress.net, clicking on the icon with four squares on the top-right, you’ll find a clean, organized dashboard that allows you to:

  • Start Fresh: Launch a vanilla WordPress site or test specific Pull Requests (PRs) from WordPress or GutenbergGutenberg The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/.
  • Import Easily: Use the “Import .zip” button to upload projects via .zip files, GitHubGitHub GitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged by the repository owner. https://github.com/ URLs, or Blueprint URLs.
  • Explore Blueprints: Browse a library of blueprints with pre-configured setups like “Art Gallery” or “Coffee Shop.”
  • Manage Your Work: View your saved playgrounds listed at the bottom with creation dates and storage status.

2. Remembering to save your progress

WordPress Playground runs client-side in your browser, so refreshing or closing a tab before saving can erase your work. Playground now displays an “Unsaved Playground” warning in the top navigation bar to prevent this.

Click the ‘Save’ button next to the warning to store your work in browser storage and resume exactly where you left off.

3. Faster navigation via Quick Access Links

Navigating the WordPress admin area usually requires multiple clicks or manual typing of URLs. The latest update introduces a Quick Access dropdown integrated directly into the Playground’s internal address bar.

By clicking the address bar, you now get instant shortcuts to the most common areas of your site:

  • Homepage
  • Dashboard
  • Site Editor
  • New Post
  • Plugins
  • Themes

This small change significantly speeds up the testing workflow, allowing you to jump from the front end to the backend editor in a split second.

Give it a try!

These updates are designed to make WordPress Playground more user-friendly and efficient. Head over to playground.wordpress.net to test them out for yourself.

Have feedback? The team wants to hear from you! You can leave a comment below or join the conversation via the #playground SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/. channel.