Run human-readable WordPress commands

1.1 2019-10-27 23:44 UTC

This package is auto-updated.

Last update: 2023-01-29 02:51:38 UTC



WP Instructions lets you execute WordPress actions in human-readable format e.g. installing WordPress, activating plugins, etc. WP Instruction files can be provided to developers to ease local development setup and improve environment consistency.


  • PHP 7.2+


Install WP Instructions with Composer like so:

composer require 10up/wpinstructions


Instructions should be saved in a file named WPInstructions. Here is an example of an instructions file:

install wordpress where url is http://wp.test
Install plugin where name is distributor and url is https://github.com/10up/distributor.git and version is latest
install theme where name is twentynineteen

You can execute the instruction file via the command line like so:

./vendor/bin/wpinstructions run

Every instructions contains an action and a list of options. In the instructions file above, install wordpress is the action for the first command where url is an option. Each instruction supports different options.

Supported Instructions

install wordpress

Options: [version] [site title] [site url] [home url] [admin email] [admin user] [admin password] [install type=(multisite|single)] [path=(path to WP directory)]

Installs WordPress. When using this instruction, you will need to pass the following parameters in via the command line: --config_db_host, --config_db_name, --config_db_user, --config_db_pass. For example:

./vendor/bin/wpinstructions run --config_db_host=localhost --config_db_name=wordpress --config_db_user=wordpress --config_db_pass=password

install theme

Options: [theme name=(theme slug)] [theme version] [theme url] [theme status=(enabled|disabled)

Installs a WordPress theme. theme url should be used for installing a theme via zip or git. theme name should match the theme slug.

install plugin

Options: [plugin name=(plugin slug)] [plugin version] [plugin url] [plugin status=(active|network active|inactive)

Installs a WordPress plugin. plugin url should be used for installing a plugin via zip or git. plugin name should match the plugin slug.

add site

Options: [site title] [site url] [home url] [admin email] [admin user] [admin password]

Add a site to a multisite instance. site_url and home_url are required as options.

activate plugin

Options: *[plugin name=(plugin slug)] [active type=(network|single)]

Activate a plugin.

enable theme

Options: *[theme name=(theme slug)]

Enable a theme.


See examples in EXAMPLES.md.

Like what you see?