mirror of
https://gh.wpcy.net/https://github.com/wp-cli/handbook.git
synced 2026-05-06 22:01:58 +08:00
- Organize files in folders according to the desired structure - Use directory iterator to loop through all files and folders (makes generation more robust)
2.7 KiB
2.7 KiB
WP_CLI::add_command()
Register a command to WP-CLI.
Usage
WP_CLI::add_command( $name, $callable, $args = [] )
$name (string) Name for the command (e.g. "post list" or "site empty").
$callable (callable|object|string) Command implementation as a class, function or closure.
$args (array) {
Optional. An associative array with additional registration parameters.
@type callable $before_invoke Callback to execute before invoking the command.
@type callable $after_invoke Callback to execute after invoking the command.
@type string $shortdesc Short description (80 char or less) for the command.
@type string $longdesc Description of arbitrary length for examples, etc.
@type string $synopsis The synopsis for the command (string or array).
@type string $when Execute callback on a named WP-CLI hook (e.g. before_wp_load).
@type bool $is_deferred Whether the command addition had already been deferred.
}
@return (bool) on success, false if deferred, hard error if registration failed.
$callable (callable|object|string) Command implementation as a class, function or closure.
$args (array) {
Optional. An associative array with additional registration parameters.
@type callable $before_invoke Callback to execute before invoking the command.
@type callable $after_invoke Callback to execute after invoking the command.
@type string $shortdesc Short description (80 char or less) for the command.
@type string $longdesc Description of arbitrary length for examples, etc.
@type string $synopsis The synopsis for the command (string or array).
@type string $when Execute callback on a named WP-CLI hook (e.g. before_wp_load).
@type bool $is_deferred Whether the command addition had already been deferred.
}
@return (bool) on success, false if deferred, hard error if registration failed.
Notes
WP-CLI supports using any callable class, function, or closure as a
command. WP_CLI::add_command() is used for both internal and
third-party command registration.
Command arguments are parsed from PHPDoc by default, but also can be supplied as an optional third argument during registration.
# Register a custom 'foo' command to output a supplied positional param.
#
# $ wp foo bar --append=qux
# Success: bar qux
/**
* My awesome closure command
*
* <message>
* : An awesome message to display
*
* --append=<message>
* : An awesome message to append to the original message.
*
* @when before_wp_load
*/
$foo = function( $args, $assoc_args ) {
WP_CLI::success( $args[0] . ' ' . $assoc_args['append'] );
};
WP_CLI::add_command( 'foo', $foo );
Internal API documentation is generated from the WP-CLI codebase on every release. To suggest improvements, please submit a pull request.
Related
- WP_CLI::add_hook() - Schedule a callback to be executed at a certain point.
- WP_CLI::do_hook() - Execute callbacks registered to a given hook.
- WP_CLI::add_wp_hook() - Add a callback to a WordPress action or filter.