WP-CLI

From Things and Stuff Wiki
Jump to navigation Jump to search


Command-line interface WordPress.

General

Install

curl https://raw.github.com/wp-cli/wp-cli.github.com/master/installer.sh | bash
//.wp-cli/bin/wp --info
 
export PATH=//.wp-cli/bin:$PATH

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 user create username email@example.com --role=administrator

wp user list

wp user update 3 --user_pass=123456

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

Other


Puppet WP-CLI

  • Puppet WP-CLI - This module enables the easy use of WP CLI to control your WordPress site through Puppet manifests. It provides an easy abstraction for common WP CLI commands as well as installing the WP CLI binaries as needed.

Other

WordPress Tools

Run the script from a folder where you'd like your dev site to live. Name the project. Slug is used throughout the build in your theme, function prefixes, etc. Optionally connect it to a private BB repo. Automatically builds local DB based on given inputs. Installs latest version of WP via WP-CLI. Creates a local-config file and modifies wp-config credentials if given for "live credentials". Installs developer plugins. ACF, Developer, WP_Debug, etc. If you fork this project you can easily change the ones I've chosen. Optionally (recommended) installs and activates a custom _s theme. This theme generates Title, description, and prefixes all functions. Saving tons of initial work.

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

to sort

Vim