I wanted to find out which sites in a Multisite network had a certain plugin active, but couldn't find an existing solution I was happy with. So, I wrote a WP-CLI command to do the job.
I wanted to update the database prefix one this site, but most of the tutorials out there have you do it manually. There are some plugins available, but I didn’t trust most of them, and the ones that I did were kind of bloated with other features, and I didn’t want to mess with the […]
We’ve opened the call for speakers for this year’s WordCamp Seattle. Give it a shot if you have any ideas, best practices, use cases, or stories you want to share with the community. I think people are often hesitant to put themselves out there, and that’s definitely understandable, but the WordPress community is really welcoming, and I think […]
I just finished the first version of a new WordPress installation template called Regolith. I’ve been using my personalized fork of Mark Jaquith’s WordPress Skeleton for the past several years, but recently came across Bedrock and really liked it. I started playing around with it, but quickly discovered that the tools and practices it embraced were a bit overkill for […]
I ran into some trouble setting up Deployer on Media Temple's Grid service, and it took me awhile to find out the answer, so I figured I'd share it here.
TL;DR: DreamHost kills processes on their shared hosting plans if they run too long, which can screw up all kinds of things in non-obvious ways. To fix it, either disable lots of plugins, or upgrade to a better hosting plan. I spent too much time this week trying to track down this issue for a […]
$wpdb->prepare() is often called with each un-sanitized value explicitly passed as an individual argument; for example: $wpdb->prepare( "SELECT id FROM wp_posts WHERE id > %d AND `post_status` = %s", $min_id, $status ) The function will also accept an array of un-sanitized values, though, like this: $wpdb->prepare( "SELECT id FROM wp_posts WHERE id > %d AND […]