LazyPressDeveloping for WordPress onthe Command Line
Why CLI?• All Keyboard Commands• Efficient• Fast• Does Not Require the Web Serverresources
Installing WP-CLI> curl http://wp-cli.org/installer.sh | bash> PATH=$HOME/.composer/bin:$PATH> source $HOME/.composer/vend...
Using the wp command• wp core (config|download|install|update)• wp comment (approve|count|spam|trash)• wp export• wp optio...
Extending WP-CLI• if( defined( ‘WP_CLI’ ) && WP_CLI )• ExtendWP_CLI_Command• Public methods become commands• Methods take ...
Extending WP-CLI• $args is an array of positional elements• e.g. wp command Hello World• $args[0] == ‘Hello’• $args[1] == ...
Extending WP-CLI• $assoc_args is an array of flags• e.g. wp command --foo=Hello--bar=World• $assoc_args[‘foo’] == ‘Hello’•...
Declaring Syntax• Methods should have a Docblock using@synopsis• Square brackets designate optional• @synopsis cmd <foo> -...
Printing to the CLI• Use the line() method from the WP_CLIclass• WP_CLI::line(‘Hello World is a Success!’);
Defining the Command• Use the add_command() method from theWP_CLI class• Argument 1 is the command name• Argument 2 is the...
Resources• WP-CLI - http://wp-cli.org• WP-CLI on Github -http://github.com/wp-cli• Sample Code -https://github.com/technos...
Upcoming SlideShare
Loading in …5
×

Wp cli

457 views

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
457
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
3
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Wp cli

  1. 1. LazyPressDeveloping for WordPress onthe Command Line
  2. 2. Why CLI?• All Keyboard Commands• Efficient• Fast• Does Not Require the Web Serverresources
  3. 3. Installing WP-CLI> curl http://wp-cli.org/installer.sh | bash> PATH=$HOME/.composer/bin:$PATH> source $HOME/.composer/vendor/wp-cli/wp-cli/utils/wp-completion.bash
  4. 4. Using the wp command• wp core (config|download|install|update)• wp comment (approve|count|spam|trash)• wp export• wp option (add|update|delete|get)• wp plugin (install|activate|list|update)• Etc
  5. 5. Extending WP-CLI• if( defined( ‘WP_CLI’ ) && WP_CLI )• ExtendWP_CLI_Command• Public methods become commands• Methods take $args and $assoc_args
  6. 6. Extending WP-CLI• $args is an array of positional elements• e.g. wp command Hello World• $args[0] == ‘Hello’• $args[1] == ‘World’
  7. 7. Extending WP-CLI• $assoc_args is an array of flags• e.g. wp command --foo=Hello--bar=World• $assoc_args[‘foo’] == ‘Hello’• $assoc_args[‘bar’] == ‘World’
  8. 8. Declaring Syntax• Methods should have a Docblock using@synopsis• Square brackets designate optional• @synopsis cmd <foo> --bar=<bar> [--baz=<baz>]
  9. 9. Printing to the CLI• Use the line() method from the WP_CLIclass• WP_CLI::line(‘Hello World is a Success!’);
  10. 10. Defining the Command• Use the add_command() method from theWP_CLI class• Argument 1 is the command name• Argument 2 is the Class name• WP_CLI::add_command( ‘hello’,‘world’);• Running wp hello instantiates the worldclass
  11. 11. Resources• WP-CLI - http://wp-cli.org• WP-CLI on Github -http://github.com/wp-cli• Sample Code -https://github.com/technosailor/baltimorephp-wpcl• BreweryDB - http://brewerydb.com• This Presentation:http://www.slideshare.net/technosailor/wp-cli

×