Tutorials UPDATED: 29 October 2021

What is WP-CLI? A Beginner’s Guide

Simon Dwight Keller

5 min read
Image for What is WP-CLI? A Beginner’s Guide

WordPress is one of the easiest ways to create a website, the platform itself being free. Although you still have to get a hosting service, users with no experience can build a clean and responsive website from scratch in no time.

But that’s not to say there’s nothing for developers who, unlike the rest of us average joes, are good with code and like to experiment.

Enter the WP-CLI.

So, what is it? And how does it unlock new doors to maximizing your WordPress experience?

Let’s have a look.

What Exactly is WP-CLI?

It’s short for WordPress Command Line Interface.

Since 2003, WordPress has been an open-source software, which means developers have been able to alter its code.

The command line feature has expanded on this, allowing users to perform tasks without the WordPress Graphic User Interface (GUI) dashboard.

WP-CLI is an alternative to using the GUI and gives you the ability to modify and manage your WordPress site via a command line.

What Can I Use the WP-CLI for?

You can perform any task with WP-CLI instead of using the WordPress Dashboard.

Here are some tasks you can complete with WP-CLI:

  • Creating a new website
  • Installing a new WordPress package
  • Installing and monitoring the status of plugins and themes
  • Handling bulk file uploads
  • Creating backups
  • Tweaking permissions and other security settings

Example

Installing and activating a new plugin is written with the command code below:

wp plugin install user-switching --activate

And the output should look like this:

Installing User Switching (1.0.9)
Downloading installation package from https://downloads.wordpress.org/plugin/user-switching.1.0.9.zip...
Unpacking the package...
Installing the plugin...
Plugin installed successfully.
Activating 'user-switching'...
Plugin 'user-switching' activated.
Success: Installed 1 of 1 plugins.

Here is a list of some basic commands:

  • admin       Open admin in a browser.
  • approve   Approve a comment.
  • cache        Manage the object cache.
  • cli               Manage WP-CLI itself.
  • comment Manage comments.
  • core           Download, install, update and manage a WordPress install.
  • create       Create a new comment.
  • delete       Delete a comment.
  • export       Exports WordPress content to a WXR file.
  • find            Find WordPress content to WXR file.
  • help           Gets help on WP-CLI, or on a specific command.
  • language Installs, activates, and manages language packs.
  • plugin       Manages plugins, including installs, activation, and updates
  • theme       Manages themes, including installs, activations, and updates.

A more detailed list of the WP-CLI commands is available if you need more information on the basic functions you can perform.

How To Get Started With WP-CLI?

So, we’ve talked about how awesome this tool is and how you can perform simple tasks from your command line on your WordPress website.

But how do you get started?

Install WP-CLI

Although it can seem challenging at first glance, we’ve outlined the basics steps below to make it easier to follow.

First, download the latest WP-CLI software in a PHP archive format (short for Phar)

You can do this using the Wget program or the cURL software outlined below:

curl - 0 https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar

Now, let’s open the file and make sure the WP-CLI archive is functioning properly with:

php wp-cli.phar --info

To use WP-CLI in the command line by typing “wp” rather than “php wp-cli.phar” you’ll need to make the file executable. To do this, move it somewhere in your PATH. For example:

chmod +x wp-cli.phar
sudo mv wp-cli.phar /usr/local/bin/wp

After you have seen a successful installation, you should see an output similar to this when you run (wp –info):

$ wp --info
OS:  Darwin 16.7.0 Darwin Kernel Version 16.7.0: Thu Jan 11 22:59:40 PST 2018; root:xnu-3789.73.8~1/RELEASE_X86_64 x86_64
Shell:  /bin/zsh
PHP binary:       /usr/local/bin/php
PHP version:       7.0.22
php.ini used:   /etc/local/etc/php/7.0/php.ini
WP-CLI root dir:        /home/wp-cli/.wp-cli/vendor/wp-cli/wp-cli
WP-CLI vendor dir:      /home/wp-cli/.wp-cli/vendor
WP-CLI packages dir:    /home/wp-cli/.wp-cli/packages/
WP-CLI global config:   /home/wp-cli/.wp-cli/config.yml
WP-CLI creen shotproject config:
WP-CLI version: 2.4.0

Now you’re good to go!

In Conclusion

There are endless commands and functions you can perform with WP-CLI. But first, familiarize yourself with the software and its capabilities.

We recommend the following resources for you:

Getting started will require time and practice. Build a knowledge base and experiment with the commands.

As a WordPress website owner, adding WP-CLI to your collection can prove to be an efficient alternative to performing tasks using the GUI dashboard.

This is a guest post contributed by Simon Dwight Keller from SDK Marketing, a Content Marketing Agency specializing in all things WordPress related!

Host your WordPress Website with Pressidium!

View our price plans

OUR READERS ALSO VIEWED:

Building a CI/CD Workflow – Automatically Deploying a WordPress Theme with GitHub Actions

Streamline your WordPress deployment process using GitHub Actions and a CI/CD workflow. Automatically build and deploy a WordPress theme to your Pressidium WordPress site.
Konstantinos Pappas
Konstantinos Pappas
22 min read

Types of Cross-Site Scripting (XSS) Attacks

In this article, on XSS attacks we're going to deep dive cross-site scripting examples to better understand how these types of attacks work.
Tassos Antoniou
Tassos Antoniou
6 min read

5 Best Tips For Web Developers When Coding For eCommerce Websites

So how can you become a successful web developer when coding for ecommerce websites? Check out this article to find out!
Daryl Bush
Daryl Bush
7 min read

WordPress and Cross-Site Scripting (XSS)

Cross-site scripting (XSS) attacks are a common types of website attack seen across the internet. Find out how to protect your website!
Tassos Antoniou
Tassos Antoniou
7 min read
SUBSCRIBE