WP-CLI

From Things and Stuff Wiki
Revision as of 12:09, 22 July 2012 by Milk (talk | contribs)
Jump to navigation Jump to search


Command-line interface WordPress.

wp-cli

Install

git clone --recursive git://github.com/wp-cli/wp-cli.git ~/git/wp-cli
cd ~/git/wp-cli
sudo utils/dev-build

For BOA; both php 5.2 and 5.3 could be installed. 5.3 is required, so change script to;

php=/opt/local/bin/php

Usage

Available commands:

wp core [download|config|install|install_network|version|update|update_db]
wp db [create|drop|optimize|repair|connect|cli|query|export|import]
wp eval-file
wp eval
wp export [validate_arguments]
wp generate [posts|users]
wp home
wp option [add|update|delete|get]
wp plugin [activate|deactivate|toggle|path|update|uninstall|delete|status|install]
wp post-meta [get|delete|add|update]
wp post [create|update|delete]
wp theme [activate|path|delete|status|install|update]
wp transient [get|set|delete|type]
wp user-meta [get|delete|add|update]
wp user [list|delete|create|update]
wp --blog=myblog.mynetwork.com
  set scope to multisite blog
wp core download
  download latest release

wp core install --url=url --title=site-title [--admin_name=username] --admin_email=email --admin_password=password
  db install
wp core update
  upgrade to latest release
wp core version --extra
  full version infos
wp plugin status
  display installed plugins
wp plugin install hello-dolly
  install hello-dolly
wp plugin install google-sitemap-generator --activate
  install and activate google-sitemap-generator
wp plugin install google-sitemap-generator --activate --dev  
  install and activate google-sitemap-generator development branch
wp plugin update akismet 
  update akismet
wp plugin update --all
  update all

wp plugin toggle [plugin]
  turn on/off google-sitemap-generator
wp plugin uninstall [plugin]
  remove plugin from the system
wp plugin delete [plugin] 
  delete plugin files 
wp theme status
  main site theme status
wp theme status --blog=test.example.com
  multisite theme status
wp theme activate my-new-theme --blog=fooblog.example.com
  multisite theme activate installed theme
cd $(wp theme path twentyeleven)
  change to theme directory
wp generate posts --count=1000
  for testing
wp export --path=./ --user=admin
  export content to a WXR file

wp db dump
  sql dump
wp db query "SELECT MAX(post_date) from wp_posts WHERE post_type = 'post' AND post_status = 'publish'"  
  last post published
wp db cli
  interactive mysql

WXR import/export

wordpress-importer-cli.php goes in wp-content/plugins/wordpress-importer

--blog:
  Blog ID of the blog you like to import to
--file: Full Path to WXR import file
--attachments: Import attachments (true/false)
--user: Username/ID the import should run as
--author_mapping: empty or php file with User mapping array $cli_user_map = array( <old_user> => <new_user_name/email/id> ); defined. if the file does not exist it will be created for you
php cli-exporter.php --blog=blogname --path=/tmp/ --user=admin [--start_date=2011-01-01] [--end_date=2011-12-31] [--post_type=post] [--author=admin] [-- * category=Uncategorized] [--post_status=publish] [--skip_comments=1] [--file_item_count=1000]

wpshell

Other

Vim