#wp-cli
53 one-liners with this tag.
All one-liners tagged wp-cli
Back up the WordPress database as a gzip file
$wp db export - --path=/var/www/vhosts/example.com/httpdocs | gzip > /var/www/vhosts/example.com/db-backup.sql.gz
Change domain: replace the old domain in the database
$wp db export /var/www/vhosts/example.com/before-domain-change.sql --path=/var/www/vhosts/example.com/httpdocs && wp search-replace '//old.example.com' '//example.com' --all-tables --skip-columns=guid --path=/var/www/vhosts/example.com/httpdocs
Change the role of a WordPress user
$wp user set-role editorial editor --path=/var/www/vhosts/example.com/httpdocs
Change the siteurl and home addresses
$wp option update siteurl 'https://example.com' --path=/var/www/vhosts/example.com/httpdocs && wp option update home 'https://example.com' --path=/var/www/vhosts/example.com/httpdocs
Check the Redis Object Cache status in WordPress
$wp redis status --path=/var/www/vhosts/example.com/httpdocs
Check whether WordPress blocks search engines
$wp option get blog_public --path=/var/www/vhosts/example.com/httpdocs
Check WordPress core files for tampering
$wp core verify-checksums --path=/var/www/vhosts/example.com/httpdocs
Compare plugin files with the originals from wordpress.org
$wp plugin verify-checksums --all --path=/var/www/vhosts/example.com/httpdocs
Count WordPress plugins by status
$wp plugin list --format=json --path=/var/www/vhosts/example.com/httpdocs | jq -r 'group_by(.status)[] | "\(.[0].status): \(length)"'
Count WordPress posts by status
$wp post list --post_type=post --post_status=any --field=post_status --path=/var/www/vhosts/example.com/httpdocs | sort | uniq -c
Create a new WordPress administrator
$wp user create emergencyadmin admin@example.com --role=administrator --path=/var/www/vhosts/example.com/httpdocs
Deactivate a single plugin despite a PHP fatal error
$wp plugin deactivate woocommerce --skip-plugins --skip-themes --path=/var/www/vhosts/example.com/httpdocs
Deactivate all plugins and save the active list
$wp plugin list --status=active --field=name --path=/var/www/vhosts/example.com/httpdocs > /var/www/vhosts/example.com/active-plugins.txt && wp plugin deactivate --all --path=/var/www/vhosts/example.com/httpdocs
Delete a scheduled WP-Cron event
$wp cron event delete old_plugin_daily_event --path=/var/www/vhosts/example.com/httpdocs
Delete all post revisions
$wp post list --post_type=revision --format=ids --path=/var/www/vhosts/example.com/httpdocs | xargs -r wp post delete --force --path=/var/www/vhosts/example.com/httpdocs
Delete expired transients from the WordPress database
$wp transient delete --expired --path=/var/www/vhosts/example.com/httpdocs
Enable automatic updates for a plugin
$wp plugin auto-updates enable wordfence --path=/var/www/vhosts/example.com/httpdocs
Enable the WordPress debug log without displaying errors
$wp config set WP_DEBUG true --raw --path=/var/www/vhosts/example.com/httpdocs && wp config set WP_DEBUG_LOG true --raw --path=/var/www/vhosts/example.com/httpdocs && wp config set WP_DEBUG_DISPLAY false --raw --path=/var/www/vhosts/example.com/httpdocs
Find posts with a specific meta key
$wp post list --post_type=any --meta_key=_yoast_wpseo_meta-robots-noindex --fields=ID,post_type,post_title --path=/var/www/vhosts/example.com/httpdocs
Find the largest autoloaded options in WordPress
$wp option list --autoload=on --orderby=size_bytes --order=desc --fields=option_name,size_bytes --path=/var/www/vhosts/example.com/httpdocs | head -n 20
Flush the WordPress object cache
$wp cache flush --path=/var/www/vhosts/example.com/httpdocs
Import a gzipped dump into the WordPress database
$gunzip -c /var/www/vhosts/example.com/db-backup.sql.gz | wp db import - --path=/var/www/vhosts/example.com/httpdocs
Install a specific WordPress core version
$wp core update --version=6.6.2 --force --path=/var/www/vhosts/example.com/httpdocs
Install and activate a WordPress language pack
$wp language core install de_DE --activate --path=/var/www/vhosts/example.com/httpdocs
List all sites in a WordPress multisite
$wp site list --fields=blog_id,url,last_updated --path=/var/www/vhosts/example.com/httpdocs
List all WordPress administrators
$wp user list --role=administrator --fields=ID,user_login,user_email,user_registered --path=/var/www/vhosts/example.com/httpdocs
List all WordPress users with their roles
$wp user list --fields=ID,user_login,user_email,roles --path=/var/www/vhosts/example.com/httpdocs
List installed plugins with status and updates
$wp plugin list --fields=name,status,version,update_version --path=/var/www/vhosts/example.com/httpdocs
List installed themes with status and updates
$wp theme list --fields=name,status,version,update_version --path=/var/www/vhosts/example.com/httpdocs
List scheduled WP-Cron events
$wp cron event list --fields=hook,next_run_relative,recurrence --path=/var/www/vhosts/example.com/httpdocs
Optimize the WordPress database
$wp db optimize --path=/var/www/vhosts/example.com/httpdocs
Permanently delete all spam comments
$wp comment list --status=spam --format=ids --path=/var/www/vhosts/example.com/httpdocs | xargs -r wp comment delete --force --path=/var/www/vhosts/example.com/httpdocs
Purge LiteSpeed Cache for a WordPress site with WP-CLI
$wp litespeed-purge all --path=/var/www/vhosts/example.com/httpdocs
Read the siteurl and home addresses
$wp option get siteurl --path=/var/www/vhosts/example.com/httpdocs && wp option get home --path=/var/www/vhosts/example.com/httpdocs
Regenerate missing thumbnails
$wp media regenerate --only-missing --yes --path=/var/www/vhosts/example.com/httpdocs
Regenerate permalinks and rewrite rules
$wp rewrite flush --path=/var/www/vhosts/example.com/httpdocs
Regenerate WordPress security keys (salts)
$wp config shuffle-salts --path=/var/www/vhosts/example.com/httpdocs
Remove the search engine block in WordPress
$wp option update blog_public 1 --path=/var/www/vhosts/example.com/httpdocs
Reset a WordPress user password
$wp user update admin --user_pass=NewSecurePassword --path=/var/www/vhosts/example.com/httpdocs
Roll back a plugin to a specific version
$wp plugin install contact-form-7 --version=5.9.8 --force --path=/var/www/vhosts/example.com/httpdocs
Run a WP-CLI command on every site in a multisite
$wp site list --field=url --path=/var/www/vhosts/example.com/httpdocs | xargs -r -I {} wp cache flush --url={} --path=/var/www/vhosts/example.com/httpdocs
Run due WP-Cron events immediately
$wp cron event run --due-now --path=/var/www/vhosts/example.com/httpdocs
Run PHP code in the WordPress context
$wp eval 'echo PHP_VERSION . " / WP " . get_bloginfo("version") . PHP_EOL;' --path=/var/www/vhosts/example.com/httpdocs
Run WP-CLI as the Plesk subscription user instead of root
#runuser -u webuser -- wp plugin list --path=/var/www/vhosts/example.com/httpdocs
Show recently registered WordPress users
$wp user list --orderby=registered --order=DESC --fields=ID,user_login,user_email,user_registered,roles --path=/var/www/vhosts/example.com/httpdocs | head -n 15
Show the size of WordPress database tables
$wp db size --tables --path=/var/www/vhosts/example.com/httpdocs
Show the WP-CLI version and the PHP it uses
$wp --info
Switch the WordPress database from http to https
$wp db export /var/www/vhosts/example.com/before-https.sql --path=/var/www/vhosts/example.com/httpdocs && wp search-replace 'http://example.com' 'https://example.com' --skip-columns=guid --path=/var/www/vhosts/example.com/httpdocs
Switch to a default WordPress theme
$wp theme activate twentytwentyfour --skip-themes --skip-plugins --path=/var/www/vhosts/example.com/httpdocs
Test search and replace in the database
$wp search-replace 'http://example.com' 'https://example.com' --all-tables --dry-run --report-changed-only --path=/var/www/vhosts/example.com/httpdocs
Turn WordPress maintenance mode on and off
$wp maintenance-mode activate --path=/var/www/vhosts/example.com/httpdocs
Update all WordPress plugins at once
$wp plugin update --all --path=/var/www/vhosts/example.com/httpdocs
Update WordPress core including the database
$wp core update --path=/var/www/vhosts/example.com/httpdocs && wp core update-db --path=/var/www/vhosts/example.com/httpdocs