Manages plugins and themes, including installs, activations, and updates.
wp-cli/extension-command ========================
Manages plugins and themes, including installs, activations, and updates.
Quick links: Using | Installing | Contributing | Support
Using
This package implements the following commands:
wp plugin
Manages plugins, including installs, activations, and updates.
~~~ wp plugin ~~~
See the WordPress Plugin Handbook developer resource for more information on plugins.
EXAMPLES
# Activate plugin $ wp plugin activate hello Plugin 'hello' activated. Success: Activated 1 of 1 plugins.
# Deactivate plugin $ wp plugin deactivate hello Plugin 'hello' deactivated. Success: Deactivated 1 of 1 plugins.
# Delete plugin $ wp plugin delete hello Deleted 'hello' plugin. Success: Deleted 1 of 1 plugins.
# Install the latest version from wordpress.org and activate $ wp plugin install bbpress --activate Installing bbPress (2.5.9) Downloading install package from https://downloads.wordpress.org/plugin/bbpress.2.5.9.zip... Using cached file '/home/vagrant/.wp-cli/cache/plugin/bbpress-2.5.9.zip'... Unpacking the package... Installing the plugin... Plugin installed successfully. Activating 'bbpress'... Plugin 'bbpress' activated. Success: Installed 1 of 1 plugins.
wp plugin activate
Activates one or more plugins.
~~~ wp plugin activate [
OPTIONS
[
[--all] If set, all plugins will be activated.
[--exclude=
[--network] If set, the plugin will be activated for the entire multisite network.
[--force] If set, deactivates and reactivates the plugin to re-run activation hooks, even if already active.
EXAMPLES
# Activate plugin $ wp plugin activate hello Plugin 'hello' activated. Success: Activated 1 of 1 plugins.
# Activate plugin in entire multisite network $ wp plugin activate hello --network Plugin 'hello' network activated. Success: Network activated 1 of 1 plugins.
# Activate plugins that were recently active. $ wp plugin activate $(wp plugin list --recently-active --field=name) Plugin 'bbpress' activated. Plugin 'buddypress' activated. Success: Activated 2 of 2 plugins.
# Activate plugins that were recently active on a multisite. $ wp plugin activate $(wp plugin list --recently-active --field=name) --network Plugin 'bbpress' network activated. Plugin 'buddypress' network activated. Success: Activated 2 of 2 plugins.
# Force re-running activation hooks for an already active plugin. $ wp plugin activate hello --force Plugin 'hello' activated. Success: Activated 1 of 1 plugins.
wp plugin deactivate
Deactivates one or more plugins.
~~~ wp plugin deactivate [
OPTIONS
[
[--uninstall] Uninstall the plugin after deactivation.
[--all] If set, all plugins will be deactivated.
[--exclude=
[--network] If set, the plugin will be deactivated for the entire multisite network.
EXAMPLES
# Deactivate plugin $ wp plugin deactivate hello Plugin 'hello' deactivated. Success: Deactivated 1 of 1 plugins.
# Deactivate all plugins with exclusion $ wp plugin deactivate --all --exclude=hello,wordpress-seo Plugin 'contact-form-7' deactivated. Plugin 'ninja-forms' deactivated. Success: Deactivated 2 of 2 plugins.
wp plugin delete
Deletes plugin files without deactivating or uninstalling.
~~~ wp plugin delete [
OPTIONS
[
[--all] If set, all plugins will be deleted.
[--exclude=
EXAMPLES
# Delete plugin $ wp plugin delete hello Deleted 'hello' plugin. Success: Deleted 1 of 1 plugins.
# Delete inactive plugins $ wp plugin delete $(wp plugin list --status=inactive --field=name) Deleted 'tinymce-templates' plugin. Success: Deleted 1 of 1 plugins.
# Delete all plugins excluding specified ones $ wp plugin delete --all --exclude=hello-dolly,jetpack Deleted 'akismet' plugin. Deleted 'tinymce-templates' plugin. Success: Deleted 2 of 2 plugins.
wp plugin get
Gets details about an installed plugin.
~~~ wp plugin get
OPTIONS
[--field=
[--fields=
[--format=
AVAILABLE FIELDS
These fields will be displayed by default for the plugin:
- name
- title
- author
- version
- description
- status
- requires_wp
- requires_php
- requires_plugins
# Get plugin details. $ wp plugin get bbpress --format=json {"name":"bbpress","title":"bbPress","author":"The bbPress Contributors","version":"2.6.9","description":"bbPress is forum software with a twist from the creators of WordPress.","status":"active"}
wp plugin install
Installs one or more plugins.
~~~ wp plugin install
OPTIONS
[--version=
[--force] If set, the command will overwrite any installed version of the plugin, without prompting for confirmation.
[--ignore-requirements] If set, the command will install the plugin while ignoring any WordPress or PHP version requirements specified by the plugin authors.
[--activate] If set, the plugin will be activated immediately after install.
[--activate-network] If set, the plugin will be network activated immediately after install
[--insecure] Retry downloads without certificate validation if TLS handshake fails. Note: This makes the request vulnerable to a MITM attack.
[--with-dependencies] If set, the command will also install all required dependencies of the plugin as specified in the 'Requires Plugins' header.
[--slug=
EXAMPLES
# Install the latest version from wordpress.org and activate $ wp plugin install bbpress --activate Installing bbPress (2.5.9) Downloading install package from https://downloads.wordpress.org/plugin/bbpress.2.5.9.zip... Using cached file '/home/vagrant/.wp-cli/cache/plugin/bbpress-2.5.9.zip'... Unpacking the package... Installing the plugin... Plugin installed successfully. Activating 'bbpress'... Plugin 'bbpress' activated. Success: Installed 1 of 1 plugins.
# Install the development version from wordpress.org $ wp plugin install bbpress --version=dev Installing bbPress (Development Version) Downloading install package from https://downloads.wordpress.org/plugin/bbpress.zip... Unpacking the package... Installing the plugin... Plugin installed successfully. Success: Installed 1 of 1 plugins.
# Install from a local zip file $ wp plugin install ../my-plugin.zip Unpacking the package... Installing the plugin... Plugin installed successfully. Success: Installed 1 of 1 plugins.
# Install from a remote zip file $ wp plugin install http://s3.amazonaws.com/bucketname/my-plugin.zip?AWSAccessKeyId=123&Expires=456&Signature=abcdef Downloading install package from http://s3.amazonaws.com/bucketname/my-plugin.zip?AWSAccessKeyId=123&Expires=456&Signature=abcdef Unpacking the package... Installing the plugin... Plugin installed successfully. Success: Installed 1 of 1 plugins.
# Update from a remote zip file $ wp plugin install https://github.com/envato/wp-envato-market/archive/master.zip --force Downloading install package from https://github.com/envato/wp-envato-market/archive/master.zip Unpacking the package... Installing the plugin... Renamed Github-based project from 'wp-envato-market-master' to 'wp-envato-market'. Plugin updated successfully Success: Installed 1 of 1 plugins.
# Forcefully re-install all installed plugins $ wp plugin install $(wp plugin list --field=name) --force Installing Akismet (3.1.11) Downloading install package from https://downloads.wordpress.org/plugin/akismet.3.1.11.zip... Unpacking the package... Installing the plugin... Removing the old version of the plugin... Plugin updated successfully Success: Installed 1 of 1 plugins.
# Install from a remote PHP file $ wp plugin install https://example.com/my-plugin.php Installing My Plugin (1.0.0) Downloading plugin file from https://example.com/my-plugin.php...
# Install a plugin with all its dependencies $ wp plugin install my-plugin --with-dependencies Installing Required Plugin 1 (1.2.3) Plugin installed successfully. Installing Required Plugin 2 (2.0.0) Plugin installed successfully. Installing My Plugin (3.5.0) Plugin installed successfully. Success: Installed 3 of 3 plugins.
# Install from a WordPress.org plugin directory URL $ wp plugin install https://wordpress.org/plugins/akismet/ Detected WordPress.org plugins directory URL, using slug: akismet Installing Akismet Anti-spam: Spam Protection (3.1.11) Downloading install package from https://downloads.wordpress.org/plugin/akismet.3.1.11.zip... Unpacking the package... Installing the plugin... Plugin installed successfully. Success: Installed 1 of 1 plugins.
wp plugin install-dependencies
Installs all dependencies of an installed plugin.
~~~ wp plugin install-dependencies
This command is useful when you have a plugin installed that depends on other plugins, and you want to install those dependencies without activating the main plugin.
OPTIONS
[--activate] If set, dependencies will be activated immediately after install.
[--activate-network] If set, dependencies will be network activated immediately after install.
[--force] If set, the command will overwrite any installed version of the plugin, without prompting for confirmation.
EXAMPLES
# Install all dependencies of an installed plugin $ wp plugin install-dependencies my-plugin Installing Required Plugin 1 (1.2.3) Plugin installed successfully. Installing Required Plugin 2 (2.0.0) Plugin installed successfully. Success: Installed 2 of 2 plugins.
wp plugin is-active
Checks if a given plugin is active.
~~~ wp plugin is-active
Returns exit code 0 when active, 1 when not active.
If the plugin does not exist but is still in WordPress's active plugins storage (such as the active plugins option or the sitewide plugins option for network-activated plugins), a warning will be emitted.
OPTIONS
[--network] If set, check if plugin is network-activated.
EXAMPLES
# Check whether plugin is Active; exit status 0 if active, otherwise 1 $ wp plugin is-active hello $ echo $? 1
wp plugin is-installed
Checks if a given plugin is installed.
~~~ wp plugin is-installed
Returns exit code 0 when installed, 1 when uninstalled.
OPTIONS
EXAMPLES
# Check whether plugin is installed; exit status 0 if installed, otherwise 1 $ wp plugin is-installed hello $ echo $? 1
wp plugin list
Gets a list of plugins.
~~~ wp plugin list [--
Displays a list of the plugins installed on the site with activation status, whether or not there's an update available, etc.
Use --status=dropin to list installed dropins (e.g. object-cache.php).
OPTIONS
[--
[--field=
[--fields=
[--format=
[--status=
[--skip-update-check] If set, the plugin update check will be skipped.
[--recently-active] If set, only recently active plugins will be shown and the status filter will be ignored.
AVAILABLE FIELDS
These fields will be displayed by default for each plugin:
- name
- status
- update
- version
- update_version
- auto_update
- update_package
- update_id
- title
- description
- file
- author
- testedupto
- requires
- requires_php
- wporg_status
- wporglastupdated
- autoupdateindicated
# List active plugins on the site. $ wp plugin list --status=active --format=json [{"name":"dynamic-hostname","status":"active","update":"none","version":"0.4.2","updateversion":"","autoupdate":"off"},{"name":"tinymce-templates","status":"active","update":"none","version":"4.8.1","updateversion":"","autoupdate":"off"},{"name":"wp-multibyte-patch","status":"active","update":"none","version":"2.9","updateversion":"","autoupdate":"off"},{"name":"wp-total-hacks","status":"active","update":"none","version":"4.7.2","updateversion":"","autoupdate":"off"}]
# List plugins on each site in a network. $ wp site list --field=url | xargs -I % wp plugin list --url=% +---------+----------------+-----------+---------+-----------------+------------+ | name | status | update | version | updateversion | autoupdate | +---------+----------------+-----------+---------+----------------+-------------+ | akismet | active-network | none | 5.3.1 | | on | | hello | inactive | available | 1.6 | 1.7.2 | off | +---------+----------------+-----------+---------+----------------+-------------+ +---------+----------------+-----------+---------+----------------+-------------+ | name | status | update | version | updateversion | autoupdate | +---------+----------------+-----------+---------+----------------+-------------+ | akismet | active-network | none | 5.3.1 | | on | | hello | inactive | available | 1.6 | 1.7.2 | off | +---------+----------------+-----------+---------+----------------+-------------+
# Check whether plugins are still active on WordPress.org $ wp plugin list --fields=name,wporgstatus,wporglast_updated +--------------------+--------------+--------------------+ | name | wporgstatus | wporglast_updated | +--------------------+--------------+--------------------+ | akismet | active | 2023-12-11 | | user-switching | active | 2023-11-17 | | wordpress-importer | active | 2023-04-28 | | local | | | +--------------------+--------------+--------------------+
# List recently active plugins on the site. $ wp plugin list --recently-active --field=name --format=json ["akismet","bbpress","buddypress"]
wp plugin path
Gets the path to a plugin or to the plugin directory.
~~~ wp plugin path [
OPTIONS
[
[--dir] If set, get the path to the closest parent directory, instead of the plugin file.
EXAMPLES
$ cd $(wp plugin path) && pwd /var/www/wordpress/wp-content/plugins
wp plugin search
Searches the WordPress.org plugin directory.
~~~ wp plugin search
Displays plugins in the WordPress.org plugin directory matching a given search query.
OPTIONS
[--page=
[--per-page=
[--field=
[--fields=
name: Plugin Name slug: Plugin Slug version: Current Version Number author: Plugin Author author_profile: Plugin Author Profile contributors: Plugin Contributors requires: Plugin Minimum Requirements tested: Plugin Tested Up To compatibility: Plugin Compatible With rating: Plugin Rating in Percent and Total Number ratings: Plugin Ratings for each star (1-5) num_ratings: Number of Plugin Ratings homepage: Plugin Author's Homepage description: Plugin's Description short_description: Plugin's Short Description sections: Plugin Readme Sections: description, installation, FAQ, screenshots, other notes, and changelog downloaded: Plugin Download Count last_updated: Plugin's Last Update added: Plugin's Date Added to wordpress.org Repository tags: Plugin's Tags versions: Plugin's Available Versions with D/L Link donate_link: Plugin's Donation Link banners: Plugin's Banner Image Link icons: Plugin's Icon Image Link active_installs: Plugin's Number of Active Installs contributors: Plugin's List of Contributors url: Plugin's URL on wordpress.org
[--format=
EXAMPLES
$ wp plugin search dsgnwrks --per-page=20 --format=json Success: Showing 3 of 3 plugins. [{"name":"DsgnWrks Instagram Importer Debug","slug":"dsgnwrks-instagram-importer-debug","rating":0},{"name":"DsgnWrks Instagram Importer","slug":"dsgnwrks-instagram-importer","rating":84},{"name":"DsgnWrks Twitter Importer","slug":"dsgnwrks-twitter-importer","rating":80}]
$ wp plugin search dsgnwrks --fields=name,version,slug,rating,num_ratings Success: Showing 3 of 3 plugins. +-----------------------------------+---------+-----------------------------------+--------+-------------+ | name | version | slug | rating | num_ratings | +-----------------------------------+---------+-----------------------------------+--------+-------------+ | DsgnWrks Instagram Importer Debug | 0.1.6 | dsgnwrks-instagram-importer-debug | 0 | 0 | | DsgnWrks Instagram Importer | 1.3.7 | dsgnwrks-instagram-importer | 84 | 23 | | DsgnWrks Twitter Importer | 1.1.1 | dsgnwrks-twitter-importer | 80 | 1 | +-----------------------------------+---------+-----------------------------------+--------+-------------+
wp plugin status
Reveals the status of one or all plugins.
~~~ wp plugin status [
OPTIONS
[
EXAMPLES
# Displays status of all plugins $ wp plugin status 5 installed plugins: I akismet 3.1.11 I easy-digital-downloads 2.5.16 A theme-check 20160523.1 I wen-logo-slider 2.0.3 M ns-pack 1.0.0 Legend: I = Inactive, A = Active, M = Must Use
# Displays status of a plugin $ wp plugin status theme-check Plugin theme-check details: Name: Theme Check Status: Active Version: 20160523.1 Author: Otto42, pross Description: A simple and easy way to test your theme for all the latest WordPress standards and practices. A great theme development tool!
wp plugin check-update
Checks for plugin updates without performing them.
~~~ wp plugin check-update [
Lists the available plugin updates. Similar to wp core check-update.
OPTIONS
[
[--all] If set, all plugins will be checked for updates.
[--field=
[--fields=
[--format=
EXAMPLES
# Check for plugin updates $ wp plugin check-update +-----------+--------+---------+----------------+ | name | status | version | update_version | +-----------+--------+---------+----------------+ | akismet | active | 4.1.0 | 4.1.1 | +-----------+--------+---------+----------------+
# List plugins with available updates in JSON format $ wp plugin check-update --format=json [{"name":"akismet","status":"active","version":"4.1.0","update_version":"4.1.1"}]
wp plugin download
Downloads a plugin zip package without loading WordPress.
~~~ wp plugin download
OPTIONS
[--target-path=
[--version=dev.
[--force] Overwrite destination file if it already exists.
[--insecure] Retry download without certificate validation if TLS handshake fails. Note: This makes the request vulnerable to a MITM attack.
EXAMPLES
$ wp plugin download bbpress Downloading bbpress (2.5.9)... Success: Downloaded plugin package to /path/to/bbpress.2.5.9.zip
wp plugin toggle
Toggles a plugin's activation state.
~~~ wp plugin toggle
If the plugin is active, then it will be deactivated. If the plugin is inactive, then it will be activated.
OPTIONS
[--network] If set, the plugin will be toggled for the entire multisite network.
EXAMPLES
# Akismet is currently activated $ wp plugin toggle akismet Plugin 'akismet' deactivated. Success: Toggled 1 of 1 plugins.
# Akismet is currently deactivated $ wp plugin toggle akismet Plugin 'akismet' activated. Success: Toggled 1 of 1 plugins.
wp plugin uninstall
Uninstalls one or more plugins.
~~~ wp plugin uninstall [
OPTIONS
[
[--deactivate] Deactivate the plugin before uninstalling. Default behavior is to warn and skip if the plugin is active.
[--skip-delete] If set, the plugin files will not be deleted. Only the uninstall procedure will be run.
[--all] If set, all plugins will be uninstalled.
[--exclude=
EXAMPLES
$ wp plugin uninstall hello Uninstalled and deleted 'hello' plugin. Success: Uninstalled 1 of 1 plugins.
# Uninstall all plugins excluding specified ones $ wp plugin uninstall --all --exclude=hello-dolly,jetpack Uninstalled and deleted 'akismet' plugin. Uninstalled and deleted 'tinymce-templates' plugin. Success: Uninstalled 2 of 2 plugins.
wp plugin update
Updates one or more plugins.
~~~ wp plugin update [
Alias: upgrade
OPTIONS
[
[--all] If set, all plugins that have updates will be updated.
[--exclude=
[--minor] Only perform updates for minor releases (e.g. from 1.3 to 1.4 instead of 2.0)
[--patch] Only perform updates for patch releases (e.g. from 1.3 to 1.3.3 instead of 1.4)
[--format=
[--version=
[--dry-run] Preview which plugins would be updated.
[--insecure] Retry downloads without certificate validation if TLS handshake fails. Note: This makes the request vulnerable to a MITM attack.
[--auto-update-indicated] Only update plugins where the server response indicates an automatic update. Updates to the version indicated by the server, not necessarily the latest version. Cannot be used with --version, --minor, or --patch.
[--include-vcs] Include plugins that are version-controlled with a VCS (e.g. git, svn, hg). Skipped by default.
EXAMPLES
$ wp plugin update bbpress --version=dev Installing bbPress (Development Version) Downloading install package from https://downloads.wordpress.org/plugin/bbpress.zip... Unpacking the package... Installing the plugin... Removing the old version of the plugin... Plugin updated successfully. Success: Updated 1 of 2 plugins.
$ wp plugin update --all Enabling Maintenance mode... Downloading update from https://downloads.wordpress.org/plugin/akismet.3.1.11.zip... Unpacking the update... Installing the latest version... Removing the old version of the plugin... Plugin updated successfully. Downloading update from https://downloads.wordpress.org/plugin/nginx-champuru.3.2.0.zip... Unpacking the update... Installing the latest version... Removing the old version of the plugin... Plugin updated successfully. Disabling Maintenance mode... +------------------------+-------------+-------------+---------+ | name | oldversion | newversion | status | +------------------------+-------------+-------------+---------+ | akismet | 3.1.3 | 3.1.11 | Updated | | nginx-cache-controller | 3.1.1 | 3.2.0 | Updated | +------------------------+-------------+-------------+---------+ Success: Updated 2 of 2 plugins.
$ wp plugin update --all --exclude=akismet Enabling Maintenance mode... Downloading update from https://downloads.wordpress.org/plugin/nginx-champuru.3.2.0.zip... Unpacking the update... Installing the latest version... Removing the old version of the plugin... Plugin updated successfully. Disabling Maintenance mode... +------------------------+-------------+-------------+---------+ | name | oldversion | newversion | status | +------------------------+-------------+-------------+---------+ | nginx-cache-controller | 3.1.1 | 3.2.0 | Updated | +------------------------+-------------+-------------+---------+
wp plugin auto-updates
Manages plugin auto-updates.
~~~ wp plugin auto-updates ~~~
EXAMPLES
# Enable the auto-updates for a plugin $ wp plugin auto-updates enable hello Plugin auto-updates for 'hello' enabled. Success: Enabled 1 of 1 plugin auto-updates.
# Disable the auto-updates for a plugin $ wp plugin auto-updates disable hello Plugin auto-updates for 'hello' disabled. Success: Disabled 1 of 1 plugin auto-updates.
# Get the status of plugin auto-updates $ wp plugin auto-updates status hello Auto-updates for plugin 'hello' are disabled.
wp plugin auto-updates disable
Disables the auto-updates for a plugin.
~~~ wp plugin auto-updates disable [
OPTIONS
[
[--all] If set, auto-updates will be disabled for all plugins.
[--enabled-only] If set, filters list of plugins to only include the ones that have auto-updates enabled.
EXAMPLES
# Disable the auto-updates for a plugin $ wp plugin auto-updates disable hello Plugin auto-updates for 'hello' disabled. Success: Disabled 1 of 1 plugin auto-updates.
wp plugin auto-updates enable
Enables the auto-updates for a plugin.
~~~ wp plugin auto-updates enable [
OPTIONS
[
[--all] If set, auto-updates will be enabled for all plugins.
[--disabled-only] If set, filters list of plugins to only include the ones that have auto-updates disabled.
EXAMPLES
# Enable the auto-updates for a plugin $ wp plugin auto-updates enable hello Plugin auto-updates for 'hello' enabled. Success: Enabled 1 of 1 plugin auto-updates.
wp plugin auto-updates status
Shows the status of auto-updates for a plugin.
~~~ wp plugin auto-updates status [
OPTIONS
[
[--all] If set, the status of auto-updates for all plugins will be shown.
[--enabled-only] If set, filters list of plugins to only include the ones that have auto-updates enabled.
[--disabled-only] If set, filters list of plugins to only include the ones that have auto-updates disabled.
[--field=
[--format=
EXAMPLES
# Get the status of plugin auto-updates $ wp plugin auto-updates status hello +-------+----------+ | name | status | +-------+----------+ | hello | disabled | +-------+----------+
# Get the list of plugins that have auto-updates enabled $ wp plugin auto-updates status --all --enabled-only --field=name akismet duplicate-post
wp theme
Manages themes, including installs, activations, and updates.
~~~ wp theme ~~~
See the WordPress Theme Handbook developer resource for more information on themes.
EXAMPLES
# Install the latest version of a theme from wordpress.org and activate $ wp theme install twentysixteen --activate Installing Twenty Sixteen (1.2) Downloading install package from http://downloads.wordpress.org/theme/twentysixteen.1.2.zip... Unpacking the package... Installing the theme... Theme installed successfully. Activating 'twentysixteen'... Success: Switched to 'Twenty Sixteen' theme. Success: Installed 1 of 1 themes.
# Get details of an installed theme $ wp theme get twentysixteen --fields=name,title,version +---------+----------------+ | Field | Value | +---------+----------------+ | name | Twenty Sixteen | | title | Twenty Sixteen | | version | 1.2 | +---------+----------------+
# Get status of theme $ wp theme status twentysixteen Theme twentysixteen details: Name: Twenty Sixteen Status: Active Version: 1.2 Author: the WordPress team
wp theme activate
Activates a theme.
~~~ wp theme activate
OPTIONS
EXAMPLES
$ wp theme activate twentysixteen Success: Switched to 'Twenty Sixteen' theme.
wp theme delete
Deletes one or more themes.
~~~ wp theme delete [
Alias: uninstall
Removes the theme or themes from the filesystem.
OPTIONS
[
[--all] If set, all themes will be deleted except active theme.
[--force] To delete active theme use this.
EXAMPLES
$ wp theme delete twentytwelve Deleted 'twentytwelve' theme. Success: Deleted 1 of 1 themes.
wp theme disable
Disables a theme on a WordPress multisite install.
~~~ wp theme disable
Removes ability for a theme to be activated from the dashboard of a site on a WordPress multisite install.
OPTIONS
[--network] If set, the theme is disabled on the network level. Note that individual sites may still have this theme enabled if it was enabled for them independently.
EXAMPLES
# Disable theme $ wp theme disable twentysixteen Success: Disabled the 'Twenty Sixteen' theme.
# Disable theme in network level $ wp theme disable twentysixteen --network Success: Network disabled the 'Twenty Sixteen' theme.
wp theme enable
Enables a theme on a WordPress multisite install.
~~~ wp theme enable
Permits theme to be activated from the dashboard of a site on a WordPress multisite install.
OPTIONS
[--network] If set, the theme is enabled for the entire network
[--activate] If set, the theme is activated for the current site. Note that the "network" flag has no influence on this.
EXAMPLES
# Enable theme $ wp theme enable twentysixteen Success: Enabled the 'Twenty Sixteen' theme.
# Network enable theme $ wp theme enable twentysixteen --network Success: Network enabled the 'Twenty Sixteen' theme.
# Network enable and activate theme for current site $ wp theme enable twentysixteen --activate Success: Enabled the 'Twenty Sixteen' theme. Success: Switched to 'Twenty Sixteen' theme.
wp theme get
Gets details about a theme.
~~~ wp theme get
OPTIONS
[--field=
[--fields=
[--format=
EXAMPLES
$ wp theme get twentysixteen --fields=name,title,version +---------+----------------+ | Field | Value | +---------+----------------+ | name | Twenty Sixteen | | title | Twenty Sixteen | | version | 1.2 | +---------+----------------+
wp theme install
Installs one or more themes.
~~~ wp theme install
OPTIONS
[--version=
[--force] If set, the command will overwrite any installed version of the theme, without prompting for confirmation.
[--ignore-requirements] If set, the command will install the theme while ignoring any WordPress or PHP version requirements specified by the theme authors.
[--activate] If set, the theme will be activated immediately after install.
[--insecure] Retry downloads without certificate validation if TLS handshake fails. Note: This makes the request vulnerable to a MITM attack.
[--slug=
EXAMPLES
# Install the latest version from wordpress.org and activate $ wp theme install twentysixteen --activate Installing Twenty Sixteen (1.2) Downloading install package from http://downloads.wordpress.org/theme/twentysixteen.1.2.zip... Unpacking the package... Installing the theme... Theme installed successfully. Activating 'twentysixteen'... Success: Switched to 'Twenty Sixteen' theme. Success: Installed 1 of 1 themes.
# Install from a local zip file $ wp theme install ../my-theme.zip
# Install from a remote zip file $ wp theme install http://s3.amazonaws.com/bucketname/my-theme.zip?AWSAccessKeyId=123&Expires=456&Signature=abcdef
# Install from a WordPress.org theme directory URL $ wp theme install https://wordpress.org/themes/twentysixteen/ Detected WordPress.org themes directory URL, using slug: twentysixteen Installing Twenty Sixteen (1.2) Downloading install package from http://downloads.wordpress.org/theme/twentysixteen.1.2.zip... Unpacking the package... Installing the theme... Theme installed successfully. Success: Installed 1 of 1 themes.
wp theme is-active
Checks if a given theme is active.
~~~ wp theme is-active
Returns exit code 0 when active, 1 when not active.
OPTIONS
EXAMPLES
# Check whether theme is Active; exit status 0 if active, otherwise 1 $ wp theme is-active twentyfifteen $ echo $? 1
wp theme is-installed
Checks if a given theme is installed.
~~~ wp theme is-installed
Returns exit code 0 when installed, 1 when uninstalled.
OPTIONS
EXAMPLES
# Check whether theme is installed; exit status 0 if installed, otherwise 1 $ wp theme is-installed hello $ echo $? 1
wp theme list
Gets a list of themes.
~~~ wp theme list [--
OPTIONS
[--
[--field=
[--fields=
[--format=
[--status=
[--skip-update-check] If set, the theme update check will be skipped.
AVAILABLE FIELDS
These fields will be displayed by default for each theme:
- name
- status
- update
- version
- update_version
- auto_update
- type
- update_package
- update_id
- title
- description
- autoupdateindicated
# List inactive themes. $ wp theme list --status=inactive --format=csv name,status,update,version,updateversion,autoupdate,type twentyfourteen,inactive,none,3.8,,off,classic twentysixteen,inactive,available,3.0,3.1,off,classic
wp theme mod
Sets, gets, and removes theme mods.
~~~ wp theme mod ~~~
EXAMPLES
# Set the 'background_color' theme mod to '000000'. $ wp theme mod set background_color 000000 Success: Theme mod background_color set to 000000.
# Get single theme mod in JSON format. $ wp theme mod get background_color --format=json [{"key":"background_color","value":"dd3333"}]
# Remove all theme mods. $ wp theme mod remove --all Success: Theme mods removed.
wp theme mod get
Gets one or more theme mods.
~~~ wp theme mod get [
OPTIONS
[
[--field=
[--all] List all theme mods
[--format=
EXAMPLES
# Get all theme mods. $ wp theme mod get --all +------------------+---------+ | key | value | +------------------+---------+ | background_color | dd3333 | | link_color | #dd9933 | | maintextcolor | #8224e3 | +------------------+---------+
# Get single theme mod in JSON format. $ wp theme mod get background_color --format=json [{"key":"background_color","value":"dd3333"}]
# Get value of a single theme mod. $ wp theme mod get background_color --field=value dd3333
# Get multiple theme mods. $ wp theme mod get backgroundcolor headertextcolor +------------------+--------+ | key | value | +------------------+--------+ | background_color | dd3333 | | header_textcolor | | +------------------+--------+
wp theme mod set
Sets the value of a theme mod.
~~~ wp theme mod set
OPTIONS
EXAMPLES
# Set theme mod $ wp theme mod set background_color 000000 Success: Theme mod background_color set to 000000.
wp theme mod remove
Removes one or more theme mods.
~~~ wp theme mod remove [
OPTIONS
[
[--all] Remove all theme mods.
EXAMPLES
# Remove all theme mods. $ wp theme mod remove --all Success: Theme mods removed.
# Remove single theme mod. $ wp theme mod remove background_color Success: 1 mod removed.
# Remove multiple theme mods. $ wp theme mod remove backgroundcolor headertextcolor Success: 2 mods removed.
wp theme path
Gets the path to a theme or to the theme directory.
~~~ wp theme path [
OPTIONS
[
[--dir] If set, get the path to the closest parent directory, instead of the theme's "style.css" file.
EXAMPLES
# Get theme path $ wp theme path /var/www/example.com/public_html/wp-content/themes
# Change directory to theme path $ cd $(wp theme path)
wp theme search
Searches the WordPress.org theme directory.
~~~ wp theme search
Displays themes in the WordPress.org theme directory matching a given search query.
OPTIONS
[--page=
[--per-page=
[--field=
[--fields=
name: Theme Name slug: Theme Slug version: Current Version Number author: Theme Author preview_url: Theme Preview URL screenshot_url: Theme Screenshot URL rating: Theme Rating num_ratings: Number of Theme Ratings homepage: Theme Author's Homepage description: Theme Description url: Theme's URL on wordpress.org
[--format=
EXAMPLES
$ wp theme search photo --per-page=6 Success: Showing 6 of 203 themes. +----------------------+----------------------+--------+ | name | slug | rating | +----------------------+----------------------+--------+ | Photos | photos | 100 | | Infinite Photography | infinite-photography | 100 | | PhotoBook | photobook | 100 | | BG Photo Frame | bg-photo-frame | 0 | | fPhotography | fphotography | 0 | | Photo Perfect | photo-perfect | 98 | +----------------------+----------------------+--------+
wp theme status
Reveals the status of one or all themes.
~~~ wp theme status [
OPTIONS
[
EXAMPLES
$ wp theme status twentysixteen Theme twentysixteen details: Name: Twenty Sixteen Status: Inactive Version: 1.2 Author: the WordPress team
wp theme check-update
Checks for theme updates without performing them.
~~~ wp theme check-update [
Lists the available theme updates. Similar to wp core check-update.
OPTIONS
[
[--all] If set, all themes will be checked for updates.
[--field=
[--fields=
[--format=
EXAMPLES
# Check for theme updates $ wp theme check-update +------------+----------+---------+----------------+ | name | status | version | update_version | +------------+----------+---------+----------------+ | twentytwelve | inactive | 2.0 | 2.1 | +------------+----------+---------+----------------+
# List themes with available updates in JSON format $ wp theme check-update --format=json [{"name":"twentytwelve","status":"inactive","version":"2.0","update_version":"2.1"}]
wp theme download
Downloads a theme zip package without loading WordPress.
~~~ wp theme download
OPTIONS
[--target-path=
[--version=dev.
[--force] Overwrite destination file if it already exists.
[--insecure] Retry download without certificate validation if TLS handshake fails. Note: This makes the request vulnerable to a MITM attack.
EXAMPLES
$ wp theme download twentytwelve Downloading twentytwelve (1.3)... Success: Downloaded theme package to /path/to/twentytwelve.1.3.zip
wp theme update
Updates one or more themes.
~~~ wp theme update [
Alias: upgrade
OPTIONS
[
[--all] If set, all themes that have updates will be updated.
[--exclude=
[--minor] Only perform updates for minor releases (e.g. from 1.3 to 1.4 instead of 2.0)
[--patch] Only perform updates for patch releases (e.g. from 1.3 to 1.3.3 instead of 1.4)
[--format=
[--version=
[--dry-run] Preview which themes would be updated.
[--insecure] Retry downloads without certificate validation if TLS handshake fails. Note: This makes the request vulnerable to a MITM attack.
[--auto-update-indicated] Only update themes where the server response indicates an automatic update. Updates to the version indicated by the server, not necessarily the latest version. Cannot be used with --version, --minor, or --patch.
[--include-vcs] Include themes that are version-controlled with a VCS (e.g. git, svn, hg). Skipped by default.
EXAMPLES
# Update multiple themes $ wp theme update twentyfifteen twentysixteen Downloading update from https://downloads.wordpress.org/theme/twentyfifteen.1.5.zip... Unpacking the update... Installing the latest version... Removing the old version of the theme... Theme updated successfully. Downloading update from https://downloads.wordpress.org/theme/twentysixteen.1.2.zip... Unpacking the update... Installing the latest version... Removing the old version of the theme... Theme updated successfully. +---------------+-------------+-------------+---------+ | name | oldversion | newversion | status | +---------------+-------------+-------------+---------+ | twentyfifteen | 1.4 | 1.5 | Updated | | twentysixteen | 1.1 | 1.2 | Updated | +---------------+-------------+-------------+---------+ Success: Updated 2 of 2 themes.
# Exclude themes updates when bulk updating the themes $ wp theme update --all --exclude=twentyfifteen Downloading update from https://downloads.wordpress.org/theme/astra.1.0.5.1.zip... Unpacking the update... Installing the latest version... Removing the old version of the theme... Theme updated successfully. Downloading update from https://downloads.wordpress.org/theme/twentyseventeen.1.2.zip... Unpacking the update... Installing the latest version... Removing the old version of the theme... Theme updated successfully. +-----------------+----------+---------+----------------+ | name | status | version | update_version | +-----------------+----------+---------+----------------+ | astra | inactive | 1.0.1 | 1.0.5.1 | | twentyseventeen | inactive | 1.1 | 1.2 | +-----------------+----------+---------+----------------+ Success: Updated 2 of 2 themes.
# Update all themes $ wp theme update --all
wp theme mod list
Gets a list of theme mods.
~~~ wp theme mod list [--field=
OPTIONS
[--field=
[--format=
EXAMPLES
# Gets a list of theme mods. $ wp theme mod list +------------------+---------+ | key | value | +------------------+---------+ | background_color | dd3333 | | link_color | #dd9933 | | maintextcolor | #8224e3 | +------------------+---------+
wp theme auto-updates
Manages theme auto-updates.
~~~ wp theme auto-updates ~~~
EXAMPLES
# Enable the auto-updates for a theme $ wp theme auto-updates enable twentysixteen Theme auto-updates for 'twentysixteen' enabled. Success: Enabled 1 of 1 theme auto-updates.
# Disable the auto-updates for a theme $ wp theme auto-updates disable twentysixteen Theme auto-updates for 'twentysixteen' disabled. Success: Disabled 1 of 1 theme auto-updates.
# Get the status of theme auto-updates $ wp theme auto-updates status twentysixteen Auto-updates for theme 'twentysixteen' are disabled.
wp theme auto-updates disable
Disables the auto-updates for a theme.
~~~ wp theme auto-updates disable [
OPTIONS
[
[--all] If set, auto-updates will be disabled for all themes.
[--enabled-only] If set, filters list of themes to only include the ones that have auto-updates enabled.
EXAMPLES
# Disable the auto-updates for a theme $ wp theme auto-updates disable twentysixteen Theme auto-updates for 'twentysixteen' disabled. Success: Disabled 1 of 1 theme auto-updates.
wp theme auto-updates enable
Enables the auto-updates for a theme.
~~~ wp theme auto-updates enable [
OPTIONS
[
[--all] If set, auto-updates will be enabled for all themes.
[--disabled-only] If set, filters list of themes to only include the ones that have auto-updates disabled.
EXAMPLES
# Enable the auto-updates for a theme $ wp theme auto-updates enable twentysixteen Theme auto-updates for 'twentysixteen' enabled. Success: Enabled 1 of 1 theme auto-updates.
wp theme auto-updates status
Shows the status of auto-updates for a theme.
~~~ wp theme auto-updates status [
OPTIONS
[
[--all] If set, the status of auto-updates for all themes will be shown.
[--enabled-only] If set, filters list of themes to only include the ones that have auto-updates enabled.
[--disabled-only] If set, filters list of themes to only include the ones that have auto-updates disabled.
[--field=
[--format=
EXAMPLES
# Get the status of theme auto-updates $ wp theme auto-updates status twentysixteen +---------------+----------+ | name | status | +---------------+----------+ | twentysixteen | disabled | +---------------+----------+
# Get the list of themes that have auto-updates enabled $ wp theme auto-updates status --all --enabled-only --field=name twentysixteen twentyseventeen
Installing
This package is included with WP-CLI itself, no additional installation necessary.
To install the latest version of this package over what's included in WP-CLI, run:
wp package install git@github.com:wp-cli/extension-command.git
Contributing
We appreciate you taking the initiative to contribute to this project.
Contributing isn’t limited to just code. We encourage you to contribute in the way that best fits your abilities, by writing tutorials, giving a demo at your local meetup, helping other users with their support questions, or revising our documentation.
For a more thorough introduction, check out WP-CLI's guide to contributing. This package follows those policy and guidelines.
Reporting a bug
Think you’ve found a bug? We’d love for you to help us get it fixed.
Before you create a new issue, you should search existing issues to see if there’s an existing resolution to it, or if it’s already been fixed in a newer version.
Once you’ve done a bit of searching and discovered there isn’t an open or fixed issue for your bug, please create a new issue. Include as much detail as you can, and clear steps to reproduce if possible. For more guidance, review our bug report documentation.
Creating a pull request
Want to contribute a new feature? Please first open a new issue to discuss whether the feature is a good fit for the project.
Once you've decided to commit the time to seeing your pull request through, please follow our guidelines for creating a pull request to make sure it's a pleasant experience. See "Setting up" for details specific to working on this package locally.
License
This project is licensed under the MIT License. See the LICENSE file for details.
Support
GitHub issues aren't for general support questions, but there are other venues you can try: https://wp-cli.org/#support
This README.md is generated dynamically from the project's codebase using wp scaffold package-readme (doc). To suggest changes, please submit a pull request against the corresponding part of the codebase.