wp core install

Runs the standard WordPress installation process.

$ wp core install --url=<url> --title=<site-title> --admin_user=<username> [--admin_password=<password>] --admin_email=<email> [--skip-email]

Creates the WordPress tables in the database using the URL, title, and default admin user details provided. Performs the famous 5 minute install in seconds or less.

Note: if you've installed WordPress in a subdirectory, then you'll need to wp option update siteurl after wp core install. For instance, if WordPress is installed in the /wp directory and your domain is example.com, then you'll need to run wp option update siteurl http://example.com/wp for your WordPress installation to function properly.

Note: When using custom user tables (e.g. CUSTOM_USER_TABLE), the admin email and password are ignored if the user_login already exists. If the user_login doesn't exist, a new user will be created.


The address of the new site.
The title of the new site.
The name of the admin user.
The password for the admin user. Defaults to randomly generated string.
The email address for the admin user.
Don't send an email notification to the new admin user.


# Install WordPress in 5 seconds
$ wp core install --url=example.com --title=Example --admin_user=supervisor --admin_password=strongpassword --admin_email=info@example.com
Success: WordPress installed successfully.

# Install WordPress without disclosing admin_password to bash history
$ wp core install --url=example.com --title=Example --admin_user=supervisor --admin_email=info@example.com --prompt=admin_password < admin_password.txt


--path=<path> Path to the WordPress files.

--url=<url> Pretend request came from given URL. In multisite, this argument is how the target site is specified.

--ssh=[<scheme>:][<user>@]<host|container>[:<port>][<path>] Perform operation against a remote server over SSH (or a container using scheme of "docker", "docker-compose", "vagrant").

--http=<http> Perform operation against a remote WordPress installation over HTTP.

--user=<id|login|email> Set the WordPress user.

--skip-plugins[=<plugins>] Skip loading all plugins, or a comma-separated list of plugins. Note: mu-plugins are still loaded.

--skip-themes[=<themes>] Skip loading all themes, or a comma-separated list of themes.

--skip-packages Skip loading all installed packages.

--require=<path> Load PHP file before running the command (may be used more than once).

--[no-]color Whether to colorize the output.

--debug[=<group>] Show all PHP errors and add verbosity to WP-CLI output. Built-in groups include: bootstrap, commandfactory, and help.

--prompt[=<assoc>] Prompt the user to enter values for all command arguments, or a subset specified as comma-separated values.

--quiet Suppress informational messages.

Related commands
wp core check-update

Checks for WordPress updates via Version Check API.

wp core download

Downloads core WordPress files.

wp core install

Runs the standard WordPress installation process.

wp core is-installed

Checks if WordPress is installed.

wp core multisite-convert

Transforms an existing single-site installation into a multisite installation.

wp core multisite-install

Installs WordPress multisite from scratch.

wp core update

Updates WordPress to a newer version.

wp core update-db

Runs the WordPress database update procedure.

wp core verify-checksums

Verifies WordPress files against WordPress.org's checksums.

wp core version

Displays the WordPress version.