Search

WP-CLI: The WordPress Tool I Wish Someone Had Told Me About Sooner

Picture of Ravi

Ravi

Three months ago, I was that developer spending entire afternoons updating client sites. You know the drill—open browser tab, log into WordPress admin, wait for it to load (why is Bluehost so slow?), click Updates, wait some more, repeat for the next site.

Then I discovered WP-CLI during a particularly brutal week when one of my client’s sites kept crashing. The admin wouldn’t load because of some conflict between WooCommerce and a cache plugin I can’t even remember the name of now. I was panicking, Googling “WordPress white screen SSH fix,” and stumbled across this command:

wp plugin deactivate –all

Site came back instantly. I felt like an idiot for not knowing about this earlier.

Why the WordPress Admin Actually Sucks for Site Management

Look, the WordPress admin is fine for writing blog posts and uploading images. But for everything else? It’s painfully slow and unreliable.

Here’s my biggest frustration: plugin updates. You click “Update Now,” and sometimes it works. Sometimes it doesn’t. Sometimes the page just sits there loading forever (looking at you, SiteGround), and you don’t know if the update worked or if you just broke the site.

Last month, I was updating a client’s WooCommerce store and the update hung. The admin became inaccessible. Customer orders were coming in, and I couldn’t tell if payments were processing. Took me 45 minutes to figure out what happened and roll back. With WP-CLI, I would have known immediately if the update failed.

Also, can we talk about how every action requires a page reload? Update plugin → reload. Check if it worked → reload. Move to next plugin → reload. It’s 2024, and we’re still working like it’s the early 2000s.

What WP-CLI Actually Does

WP-CLI lets you control WordPress through terminal commands instead of clicking through admin screens. Most hosting companies have it installed already—even the cheaper ones like Namecheap and DreamHost.

To check if you have it, SSH into your server and type:

wp –info

If you get version information, you’re set. If not, installation is pretty straightforward, though honestly, just ask your host to install it. Most will do it for free.

The Commands I Actually Use

I’m not going to list 50 commands you’ll never remember. Here are the ones I use weekly:

Bulk Updates (This Changed My Life)

wp core update && wp plugin update –all && wp theme update –all

This updates WordPress core, all plugins, and all themes in one go. No more opening 15 browser tabs and clicking through each site individually.

Site Setup

wp core download

wp config create –dbname=yourdb –dbuser=youruser –dbpass=yourpass

wp core install –url=yoursite.com –title=”Site Name” –admin_user=admin –[email protected]

I have this saved as a bash script. New client site setup takes about 2 minutes instead of going through the entire WordPress installer.

Emergency Plugin Deactivation

wp plugin deactivate –all

When your site breaks and you can’t access admin (happens more than you’d think), this saves you. Then you can reactivate plugins one by one to find the problematic one.

Database Stuff

wp db export backup.sql

wp db optimize

wp search-replace ‘oldsite.com’ ‘newsite.com’

That search-replace command is a lifesaver for site migrations. No more messing around in phpMyAdmin trying to remember which tables contain URLs.

Real Examples from My Actual Work

The Friday Disaster: Client calls at 5 PM. Their online store is down, showing a blank page. Weekend sales are crucial for their business. I SSH in, run wp plugin deactivate –all, site comes back. Took maybe 3 minutes total instead of hours of troubleshooting through a broken admin.

Agency Work: I manage about 12 client sites. Before WP-CLI, I’d block out entire mornings for updates. Now I have a simple script that updates everything while I’m having my first coffee. The script emails me a summary, and I know immediately if anything failed.

Development: Setting up local dev sites used to be tedious. Download WordPress, create database, run through installer, configure settings. Now it’s automated. I can spin up a new dev environment faster than WordPress.com can load their signup page.

The Learning Curve (It’s Not That Bad)

If you’ve never used command line tools, start small. Pick one command—maybe the bulk update one—and get comfortable with it. Don’t try to memorize everything at once.

The documentation at wp-cli.org is actually decent, which is rare for open-source projects. Each command has examples that make sense.

Word of warning: Practice on staging sites first. I learned this the hard way when I accidentally deleted all posts on a client site while testing the wp post delete command. (Pro tip: always use –dry-run first.)

When NOT to Use WP-CLI

Writing content? Use the WordPress editor. Customizing themes? Admin interface is better. Managing users who aren’t technical? Definitely stick with the admin.

If you only have one WordPress site and rarely do maintenance tasks, the learning investment probably isn’t worth it. But if you manage multiple sites or work with WordPress professionally, you’ll wonder how you lived without it.

My Honest Take

WP-CLI isn’t revolutionary. It’s just a more efficient way to do routine WordPress tasks. The admin interface is great for content creation and design work, but terrible for site management and maintenance.

After using it for about a year, going back to doing everything through the admin feels like trying to code with one hand tied behind your back. It’s slower, less reliable, and when things break, you have fewer options.

The real benefit isn’t just speed—it’s reliability. Commands either work or they don’t. No mysterious loading screens, no half-completed updates, no wondering if that plugin actually activated or not.

Getting Started

Pick one task you do regularly—maybe plugin updates—and learn the WP-CLI version. Use it a few times until it becomes second nature, then add another command to your toolkit.

Most importantly, practice on sites that don’t matter. I cannot stress this enough. Learn the commands on your own test sites before touching client work.

The WP-CLI community is pretty helpful too. The #cli channel in WordPress Slack is active, and people actually answer questions without being condescending (unlike some other development communities I could mention).

Look, if you’ve made it this far in WordPress development without WP-CLI, you’re clearly capable of learning it. The question is whether you want to keep clicking through admin screens or start working more efficiently.

Your choice. But next time you’re staring at a loading spinner while trying to update plugins across multiple sites, remember there’s a better way.

Picture of Ravi

Ravi

Leave a Reply

Your email address will not be published. Required fields are marked *

Get The Latest Updates

Subscribe to our Newsletter

A key to unlock the world of open-source. We promise not to spam your inbox.

Suggested Reads

Join our 55,000+ Subscribers

    The Wisdm Digest delivers all the latest news, and resources from the world of open-source businesses to your inbox.

    Suggested Reads