wordpress.org/environments/README.md
Konstantin Obenland 3622a12391 Improve PHPUnit test infrastructure for the Plugin Directory.
Add a dedicated wp-env test configuration so Plugin Directory tests
run in the tests-cli container with PHPUnit 11 and Yoast Polyfills.

Props dd32, obenland.
Closes https://github.com/WordPress/wordpress.org/pull/588


git-svn-id: https://meta.svn.wordpress.org/sites/trunk@14810 74240141-8908-4e6f-9713-ba540dce6ec7
2026-04-13 17:39:15 +00:00

1.9 KiB

WordPress.org Local Development Environments

Local development environments for WordPress.org projects, powered by wp-env.

Prerequisites

Setup

From the environments/ directory:

npm install

Available Environments

Plugin Directory

A local instance of the WordPress.org Plugin Directory with the plugin directory plugin, theme, and supporting mu-plugins.

Start:

npm run plugins:env start

Import a plugin by slug:

npm run plugins:import -- akismet

Re-seed plugins (clears import flag, then re-imports):

npm run plugins:refresh

Access: http://localhost:8888

WP CLI:

npx wp-env run cli wp <command>

Run tests:

npm run plugins:test

Jobs

A local instance of jobs.wordpress.net with the JobsWP plugin, theme, sample job categories, and sample job posts.

Start:

npm run jobs:env start

Access: http://localhost:8888

WP CLI:

npm run jobs:env -- run cli -- wp <command>

Handbook (in-plugin)

The Handbook plugin has its own .wp-env.json in wordpress.org/public_html/wp-content/plugins/handbook/.

Start:

cd wordpress.org/public_html/wp-content/plugins/handbook
npx wp-env start

Run tests:

npx wp-env run phpunit phpunit -c /var/www/html/wp-content/plugins/handbook/phpunit.xml

Common Commands

# Stop an environment (replace plugins with jobs, etc.)
npm run plugins:env stop
npm run jobs:env stop

# Destroy an environment (removes all data)
npm run plugins:env destroy
npm run jobs:env destroy

# View logs
npm run plugins:env logs
npm run jobs:env logs

All commands should be run from the environments/ directory unless otherwise noted.