wp site empty

Empties a site of its content (posts, comments, terms, and meta).

$ wp site empty [--uploads] [--yes]

Truncates posts, comments, and terms tables to empty a site of its content. Doesn't affect site configuration (options) or users.

If running a persistent object cache, make sure to flush the cache after emptying the site, as the cache values will be invalid otherwise.

To also empty custom database tables, you'll need to hook into command execution:

WP_CLI::add_hook( 'after_invoke:site empty', function(){
    global $wpdb;
    foreach( array( 'p2p', 'p2pmeta' ) as $table ) {
        $table = $wpdb->$table;
        $wpdb->query( "TRUNCATE $table" );
    }
});

OPTIONS

[--uploads]
Also delete all files in the site's uploads directory.
[--yes]
Proceed to empty the site without a confirmation prompt.

EXAMPLES

$ wp site empty
Are you sure you want to empty the site at http://www.example.com of all posts, comments, and terms? [y/n] y
Success: The site at 'http://www.example.com' was emptied.

GLOBAL PARAMETERS

--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 site activate

Activates one or more sites.

wp site archive

Archives one or more sites.

wp site create

Creates a site in a multisite installation.

wp site deactivate

Deactivates one or more sites.

wp site delete

Deletes a site in a multisite installation.

wp site empty

Empties a site of its content (posts, comments, terms, and meta).

wp site list

Lists all sites in a multisite installation.

wp site mature

Sets one or more sites as mature.

wp site meta

Adds, updates, deletes, and lists site custom fields.

wp site option

Adds, updates, deletes, and lists site options in a multisite installation.

wp site private

Sets one or more sites as private.

wp site public

Sets one or more sites as public.

wp site spam

Marks one or more sites as spam.

wp site switch-language

Activates a given language.

wp site unarchive

Unarchives one or more sites.

wp site unmature

Sets one or more sites as immature.

wp site unspam

Removes one or more sites from spam.