A Week with Windows 10 and Linux Subsystem for WordPress Development

It’s been 10 years since I switched to Apple, coming from Windows. Having native access to unix tools via the terminal was what initially attracted me to the world of Mac. I recently spent a week on Windows 10 and was surprised how well it worked. Another Macbook Pro repair, another chance for a clean…

Speeding up Extracting a Site from Multisite

Last year I wrote about Extracting a Site from Multisite. The real tedious part is manually moving themes, plugins and uploads relating to a particular subsite over to a standard WordPress install. Luckily this can be automated using bash and Rclone. Rclone makes scripting over sftp enjoyable. Rclone supports practically any remote storage provider…

Concurrent Site Monitor in Bash

Something that’s important for every website is a site monitor, and a great tool for getting started is Jetpack Monitor. It’s free and sends out an email notification whenever downtime is detected. If you want more control and flexibility over downtime notifications, I recommend using a paid site monitoring service or do your own site…

Removing Sensitive Data from Git Repos

If you’ve ever worked with git for a WordPress project, you may at some point accidentally added private keys and other sensitive data into the repo. It’s easy to do especially when your working on a project that you’re not intending on sharing. Going back and modifying a past commit isn’t a simple one-liner.…

Writing Personalized Scheduled Emails with WordPress

There are many options for sending out email newsletters. Recently, I was reviewing various options for sending out my CaptainCore updates. At first I was tempted to just grab entries from my Gravity Forms and send out a regular email with everyone BCC’d. However I foresee how that will quickly become problematic when manually maintaining…

Working with WP Engine’s Legacy Staging

WP Engine is one of the main web hosts I use for Anchor Hosting. They recently announced new staging and development environments which will eventually make the existing staging site feature obsolete. In fact they now call staging “Legacy Staging”. During this transition phase having both legacy staging and the new staging and development environments…

Argument List Too Long with WP-CLI

When using command line applications, like WP-CLI, you may run into a scenario where you’re attempting to pass too much information via arguments. That will result in an error like zsh: argument list too long: wp or /usr/local/bin/wp: Argument list too long. Similar to website URLs, there is a maximum length a command can be.…

My First Custom Table with WordPress

A few months back I announced a new feature called Quicksaves. Each Quicksave contains a fair amount of website data which I’ve been storing in a WordPress custom post type and some custom fields with Advanced Custom Fields. Right from the beginning, I’ve suspected that this might quickly grow beyond what a WordPress custom post…

Magic Login Links for WordPress

Most WordPress management systems include a one-click login button for accessing the various WordPress sites. This makes it really convenient when bouncing between different WordPress sites as no passwords are required. I’ve wanted this super convenient login setup for my own management toolkit. Recently I stumbled on a free plugin made by Daniel Bachhuber call One…

Advantages & Disadvantages using SSH for WordPress Management

My own WordPress management toolkit is built on top of SSH. That’s very different than other alternative WordPress management systems. To talk more on how I ended up making the decision to build on SSH let’s dig into some advantages and disadvantages in using SSH for WordPress management. Advantages for SSH Crazy powerful. There is just no…