wp-cli/extension-command

管理插件和主题,包括安装、激活和更新。

安装次数: 5,898,919

依赖项: 37

建议者: 0

安全性: 0

星标: 87

关注者: 14

分支: 80

开放性问题: 34

类型:wp-cli-package


README

管理插件和主题,包括安装、激活和更新。

Testing

快速链接: 使用 | 安装 | 贡献 | 支持

使用

此包实现了以下命令

wp plugin

管理插件,包括安装、激活和更新。

wp plugin

有关插件的更多信息,请参阅 WordPress 插件手册 开发资源。

示例

# 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

激活一个或多个插件。

wp plugin activate [<plugin>...] [--all] [--exclude=<name>] [--network]

选项

[<plugin>...]
	One or more plugins to activate.

[--all]
	If set, all plugins will be activated.

[--exclude=<name>]
	Comma separated list of plugin slugs to be excluded from activation.

[--network]
	If set, the plugin will be activated for the entire multisite network.

示例

# 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.

wp plugin deactivate

停用一个或多个插件。

wp plugin deactivate [<plugin>...] [--uninstall] [--all] [--exclude=<name>] [--network]

选项

[<plugin>...]
	One or more plugins to deactivate.

[--uninstall]
	Uninstall the plugin after deactivation.

[--all]
	If set, all plugins will be deactivated.

[--exclude=<name>]
	Comma separated list of plugin slugs that should be excluded from deactivation.

[--network]
	If set, the plugin will be deactivated for the entire multisite network.

示例

# 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

删除插件文件,不进行停用或卸载。

wp plugin delete [<plugin>...] [--all] [--exclude=<name>]

选项

[<plugin>...]
	One or more plugins to delete.

[--all]
	If set, all plugins will be deleted.

[--exclude=<name>]
	Comma separated list of plugin slugs to be excluded from deletion.

示例

# 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

获取已安装插件的详细信息。

wp plugin get <plugin> [--field=<field>] [--fields=<fields>] [--format=<format>]

选项

<plugin>
	The plugin to get.

[--field=<field>]
	Instead of returning the whole plugin, returns the value of a single field.

[--fields=<fields>]
	Limit the output to specific fields. Defaults to all fields.

[--format=<format>]
	Render output in a particular format.
	---
	default: table
	options:
	  - table
	  - csv
	  - json
	  - yaml
	---

可用字段

这些字段将默认显示为插件的

  • 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

安装一个或多个插件。

wp plugin install <plugin|zip|url>... [--version=<version>] [--force] [--activate] [--activate-network] [--insecure]

选项

<plugin|zip|url>...
	One or more plugins to install. Accepts a plugin slug, the path to a local zip file, or a URL to a remote zip file.

[--version=<version>]
	If set, get that particular version from wordpress.org, instead of the
	stable version.

[--force]
	If set, the command will overwrite any installed version of the plugin, without prompting
	for confirmation.

[--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.

示例

# 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.

wp plugin is-installed

检查指定的插件是否已安装。

wp plugin is-installed <plugin>

已安装时返回退出代码 0,未安装时返回 1。

选项

<plugin>
	The plugin to check.

示例

# Check whether plugin is installed; exit status 0 if installed, otherwise 1
$ wp plugin is-installed hello
$ echo $?
1

wp plugin list

获取插件列表。

wp plugin list [--<field>=<value>] [--field=<field>] [--fields=<fields>] [--format=<format>] [--status=<status>] [--skip-update-check] [--recently-active]

显示已安装在网站上的插件列表,包括激活状态、是否有可用更新等。

使用 --status=dropin 列出已安装的 dropins(例如 object-cache.php)。

选项

[--<field>=<value>]
	Filter results based on the value of a field.

[--field=<field>]
	Prints the value of a single field for each plugin.

[--fields=<fields>]
	Limit the output to specific object fields.

[--format=<format>]
	Render output in a particular format.
	---
	default: table
	options:
	  - table
	  - csv
	  - count
	  - json
	  - yaml
	---

[--status=<status>]
	Filter the output by plugin status.
	---
	options:
	  - active
	  - active-network
	  - dropin
	  - inactive
	  - must-use
	---

[--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.

可用字段

以下字段将默认显示为每个插件的

  • name
  • status
  • update
  • version
  • update_version
  • auto_update

以下字段为可选字段

  • update_package
  • update_id
  • title
  • description
  • file
  • author
  • tested_up_to
  • wporg_status
  • wporg_last_updated

示例

# List active plugins on the site.
$ wp plugin list --status=active --format=json
[{"name":"dynamic-hostname","status":"active","update":"none","version":"0.4.2","update_version":"","auto_update":"off"},{"name":"tinymce-templates","status":"active","update":"none","version":"4.8.1","update_version":"","auto_update":"off"},{"name":"wp-multibyte-patch","status":"active","update":"none","version":"2.9","update_version":"","auto_update":"off"},{"name":"wp-total-hacks","status":"active","update":"none","version":"4.7.2","update_version":"","auto_update":"off"}]

# List plugins on each site in a network.
$ wp site list --field=url | xargs -I % wp plugin list --url=%
+---------+----------------+-----------+---------+-----------------+------------+
| name    | status         | update    | version | update_version | auto_update |
+---------+----------------+-----------+---------+----------------+-------------+
| akismet | active-network | none      | 5.3.1   |                | on          |
| hello   | inactive       | available | 1.6     | 1.7.2          | off         |
+---------+----------------+-----------+---------+----------------+-------------+
+---------+----------------+-----------+---------+----------------+-------------+
| name    | status         | update    | version | update_version | auto_update |
+---------+----------------+-----------+---------+----------------+-------------+
| 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,wporg_status,wporg_last_updated
+--------------------+--------------+--------------------+
| name               | wporg_status | wporg_last_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

获取插件或插件目录的路径。

wp plugin path [<plugin>] [--dir]

选项

[<plugin>]
	The plugin to get the path to. If not set, will return the path to the
	plugins directory.

[--dir]
	If set, get the path to the closest parent directory, instead of the
	plugin file.

示例

$ cd $(wp plugin path) && pwd
/var/www/wordpress/wp-content/plugins

wp plugin search

搜索 WordPress.org 插件目录。

wp plugin search <search> [--page=<page>] [--per-page=<per-page>] [--field=<field>] [--fields=<fields>] [--format=<format>]

显示匹配给定搜索查询的 WordPress.org 插件目录中的插件。

选项

<search>
	The string to search for.

[--page=<page>]
	Optional page to display.
	---
	default: 1
	---

[--per-page=<per-page>]
	Optional number of results to display.
	---
	default: 10
	---

[--field=<field>]
	Prints the value of a single field for each plugin.

[--fields=<fields>]
	Ask for specific fields from the API. Defaults to name,slug,author_profile,rating. Acceptable values:

**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=<format>]
	Render output in a particular format.
	---
	default: table
	options:
	  - table
	  - csv
	  - count
	  - json
	  - yaml
	---

示例

$ 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

显示一个或所有插件的当前状态。

wp plugin status [<plugin>]

选项

[<plugin>]
	A particular plugin to show the status for.

示例

# 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 toggle

切换插件激活状态。

wp plugin toggle <plugin>... [--network]

如果插件处于激活状态,则将其停用。如果插件处于非激活状态,则将其激活。

选项

<plugin>...
	One or more plugins to toggle.

[--network]
	If set, the plugin will be toggled for the entire multisite network.

示例

# 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

卸载一个或多个插件。

wp plugin uninstall [<plugin>...] [--deactivate] [--skip-delete] [--all] [--exclude=<name>]

选项

[<plugin>...]
	One or more plugins to uninstall.

[--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=<name>]
	Comma separated list of plugin slugs to be excluded from uninstall.

示例

$ 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

更新一个或多个插件。

wp plugin update [<plugin>...] [--all] [--exclude=<name>] [--minor] [--patch] [--format=<format>] [--version=<version>] [--dry-run] [--insecure]

选项

[<plugin>...]
	One or more plugins to update.

[--all]
	If set, all plugins that have updates will be updated.

[--exclude=<name>]
	Comma separated list of plugin names that should be excluded from updating.

[--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=<format>]
	Render output in a particular format.
	---
	default: table
	options:
	  - table
	  - csv
	  - json
	  - summary
	---

[--version=<version>]
	If set, the plugin will be updated to the specified 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.

示例

$ 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                   | old_version | new_version | 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                   | old_version | new_version | status  |
+------------------------+-------------+-------------+---------+
| nginx-cache-controller | 3.1.1       | 3.2.0       | Updated |
+------------------------+-------------+-------------+---------+

wp theme

管理主题,包括安装、激活和更新。

wp theme

有关主题的更多信息,请参阅 WordPress 主题手册 开发资源。

示例

# 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

激活一个主题。

wp theme activate <theme>

选项

<theme>
	The theme to activate.

示例

$ wp theme activate twentysixteen
Success: Switched to 'Twenty Sixteen' theme.

wp theme delete

删除一个或多个主题。

wp theme delete [<theme>...] [--all] [--force]

从文件系统中删除主题或主题。

选项

[<theme>...]
	One or more themes to delete.

[--all]
	If set, all themes will be deleted except active theme.

[--force]
	To delete active theme use this.

示例

$ wp theme delete twentytwelve
Deleted 'twentytwelve' theme.
Success: Deleted 1 of 1 themes.

wp theme disable

在 WordPress 多站点安装中禁用主题。

wp theme disable <theme> [--network]

从 WordPress 多站点安装中某个站点的仪表板中删除主题激活的能力。

选项

<theme>
	The theme to disable.

[--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.

示例

# 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

在WordPress多站安装中启用主题。

wp theme enable <theme> [--network] [--activate]

允许从WordPress多站安装中某个站点的仪表盘中激活主题。

选项

<theme>
	The theme to enable.

[--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.

示例

# 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

获取有关主题的详细信息。

wp theme get <theme> [--field=<field>] [--fields=<fields>] [--format=<format>]

选项

<theme>
	The theme to get.

[--field=<field>]
	Instead of returning the whole theme, returns the value of a single field.

[--fields=<fields>]
	Limit the output to specific fields. Defaults to all fields.

[--format=<format>]
	Render output in a particular format.
	---
	default: table
	options:
	  - table
	  - csv
	  - json
	  - yaml
	---

示例

$ wp theme get twentysixteen --fields=name,title,version
+---------+----------------+
| Field   | Value          |
+---------+----------------+
| name    | Twenty Sixteen |
| title   | Twenty Sixteen |
| version | 1.2            |
+---------+----------------+

wp theme install

安装一个或多个主题。

wp theme install <theme|zip|url>... [--version=<version>] [--force] [--activate] [--insecure]

选项

<theme|zip|url>...
	One or more themes to install. Accepts a theme slug, the path to a local zip file, or a URL to a remote zip file.

[--version=<version>]
	If set, get that particular version from wordpress.org, instead of the
	stable version.

[--force]
	If set, the command will overwrite any installed version of the theme, without prompting
	for confirmation.

[--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.

示例

# 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

wp theme is-installed

检查指定的主题是否已安装。

wp theme is-installed <theme>

已安装时返回退出代码 0,未安装时返回 1。

选项

<theme>
	The theme to check.

示例

# Check whether theme is installed; exit status 0 if installed, otherwise 1
$ wp theme is-installed hello
$ echo $?
1

wp theme list

获取主题列表。

wp theme list [--<field>=<value>] [--field=<field>] [--fields=<fields>] [--format=<format>] [--status=<status>] [--skip-update-check]

选项

[--<field>=<value>]
	Filter results based on the value of a field.

[--field=<field>]
	Prints the value of a single field for each theme.

[--fields=<fields>]
	Limit the output to specific object fields.

[--format=<format>]
	Render output in a particular format.
	---
	default: table
	options:
	  - table
	  - csv
	  - json
	  - count
	  - yaml
	---

[--status=<status>]
	Filter the output by theme status.
	---
	options:
	  - active
	  - parent
	  - inactive
	---

[--skip-update-check]
	If set, the theme update check will be skipped.

可用字段

这些字段将默认显示在每个主题中

  • name
  • status
  • update
  • version
  • update_version
  • auto_update

以下字段为可选字段

  • update_package
  • update_id
  • title
  • description

示例

# List inactive themes.
$ wp theme list --status=inactive --format=csv
name,status,update,version,update_version,auto_update
twentyfourteen,inactive,none,3.8,,off
twentysixteen,inactive,available,3.0,3.1,off

wp theme mod

设置、获取和删除主题修改。

wp theme mod

示例

# 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

获取一个或多个主题修改。

wp theme mod get [<mod>...] [--field=<field>] [--all] [--format=<format>]

选项

[<mod>...]
	One or more mods to get.

[--field=<field>]
	Returns the value of a single field.

[--all]
	List all theme mods

[--format=<format>]
	Render output in a particular format.
	---
	default: table
	options:
	  - table
	  - json
	  - csv
	  - yaml
	---

示例

# Get all theme mods.
$ wp theme mod get --all
+------------------+---------+
| key              | value   |
+------------------+---------+
| background_color | dd3333  |
| link_color       | #dd9933 |
| main_text_color  | #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 background_color header_textcolor
+------------------+--------+
| key              | value  |
+------------------+--------+
| background_color | dd3333 |
| header_textcolor |        |
+------------------+--------+

wp theme mod set

设置主题修改的值。

wp theme mod set <mod> <value>

选项

<mod>
	The name of the theme mod to set or update.

<value>
	The new value.

示例

# Set theme mod
$ wp theme mod set background_color 000000
Success: Theme mod background_color set to 000000.

wp theme mod remove

删除一个或多个主题修改。

wp theme mod remove [<mod>...] [--all]

选项

[<mod>...]
	One or more mods to remove.

[--all]
	Remove all theme mods.

示例

# 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 background_color header_textcolor
Success: 2 mods removed.

wp theme path

获取主题或主题目录的路径。

wp theme path [<theme>] [--dir]

选项

[<theme>]
	The theme to get the path to. Path includes "style.css" file.
	If not set, will return the path to the themes directory.

[--dir]
	If set, get the path to the closest parent directory, instead of the
	theme's "style.css" file.

示例

# 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

搜索WordPress.org主题目录。

wp theme search <search> [--page=<page>] [--per-page=<per-page>] [--field=<field>] [--fields=<fields>] [--format=<format>]

显示匹配给定搜索查询的WordPress.org主题目录中的主题。

选项

<search>
	The string to search for.

[--page=<page>]
	Optional page to display.
	---
	default: 1
	---

[--per-page=<per-page>]
	Optional number of results to display. Defaults to 10.

[--field=<field>]
	Prints the value of a single field for each theme.

[--fields=<fields>]
	Ask for specific fields from the API. Defaults to name,slug,author,rating. Acceptable values:

**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=<format>]
	Render output in a particular format.
	---
	default: table
	options:
	  - table
	  - csv
	  - json
	  - count
	  - yaml
	---

示例

$ 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

揭示一个或所有主题的状态。

wp theme status [<theme>]

选项

[<theme>]
	A particular theme to show the status for.

示例

$ wp theme status twentysixteen
Theme twentysixteen details:
     Name: Twenty Sixteen
     Status: Inactive
     Version: 1.2
     Author: the WordPress team

wp theme update

更新一个或多个主题。

wp theme update [<theme>...] [--all] [--exclude=<theme-names>] [--minor] [--patch] [--format=<format>] [--version=<version>] [--dry-run] [--insecure]

选项

[<theme>...]
	One or more themes to update.

[--all]
	If set, all themes that have updates will be updated.

[--exclude=<theme-names>]
	Comma separated list of theme names that should be excluded from updating.

[--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=<format>]
	Render output in a particular format.
	---
	default: table
	options:
	  - table
	  - csv
	  - json
	  - summary
	---

[--version=<version>]
	If set, the theme will be updated to the specified 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.

示例

# 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          | old_version | new_version | 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

获取主题修改列表。

wp theme mod list [--field=<field>] [--format=<format>]

选项

[--field=<field>]
	Returns the value of a single field.

[--format=<format>]
	Render output in a particular format.
	---
	default: table
	options:
	  - table
	  - json
	  - csv
	  - yaml
	---

示例

# Gets a list of theme mods.
$ wp theme mod list
+------------------+---------+
| key              | value   |
+------------------+---------+
| background_color | dd3333  |
| link_color       | #dd9933 |
| main_text_color  | #8224e3 |
+------------------+---------+

安装中

此包包含在WP-CLI本身中,无需额外安装。

要安装此包的最新版本(覆盖WP-CLI中包含的版本),请运行

wp package install [email protected]:wp-cli/extension-command.git

贡献

我们感谢您主动为该项目做出贡献。

贡献不仅限于代码。我们鼓励您以最适合您能力的方式做出贡献,例如撰写教程、在当地聚会中演示、帮助其他用户解决支持问题或修订我们的文档。

要获取更详细的介绍,请查看WP-CLI贡献指南。此包遵循那些政策和指南。

报告一个错误

认为你发现了一个错误?我们很乐意让你帮助我们将其修复。

在创建新问题之前,你应该搜索现有问题,看看是否有现有的解决方案,或者它是否已经被修复在更新的版本中。

在进行了搜索并发现没有针对你的错误的开放或已修复问题后,请创建新问题。请尽可能提供详细的信息,如果可能,提供明确的重现步骤。有关更多指导,请审查我们的错误报告文档

创建一个pull request

想要贡献一个新功能?请首先打开新问题以讨论该功能是否适合项目。

一旦你决定投入时间来看到你的pull request得到实施,请遵循我们创建pull request的指南以确保它是一个愉快的体验。请参阅"设置"以获取针对本地工作于此包的特定细节。

支持

GitHub问题不是用于一般支持问题,但你可以尝试其他途径:https://wp-cli.org/#support

此README.md是从项目的代码库使用wp scaffold package-readme文档)动态生成的。要提出建议,请向代码库的相应部分提交一个pull request。