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 […]
TED Radio Hour has a great episode about the pre-technology roots of the ideas behind today’s Open Source movement, and how they’re being applied beyond the digital realm, to things like architecture, deep-sea rovers, and even democracy itself.
Pagination is one of my biggest pet peeves, and Avoid the Pains of Pagination does a good job of explaining the primary reason: Users have better experiences with scrolling than clicking. The mouse wheels, touchpads and touchscreens of today make scrolling faster and easier than clicking. To get to the next page in a pagination, the user has […]
The Web We Lost does a great job of contrasting the values of today’s big tech companies and the values that made the Internet and Web so radically different from the mediums it replaced. The tech industry and its press have treated the rise of billion-scale social networks and ubiquitous smartphone apps as an unadulterated […]
TL;DR: View the code on Meta Trac. Every once in awhile I’ll run into a situation where something will break permalinks on all the sites in a WordPress Multisite network, like a plugin network-activation gone wrong. On a single site, it’s easy enough to fix by manually visiting Settings > Permalinks, which will flush and rebuild the rewrite […]
Why Websites get Hacked is a good high-level article to sends to clients or friends who don’t understand why someone would want to attack their site — and therefore doesn’t see the need to protect it — or are curious about how it happens.
I’ve been looking for a good live CSS reloader and the Auto Reload extension for Firefox is the best one I’ve found. It doesn’t require any programs or services running outside of the browser, so it’s more self-contained, and doesn’t break when you proxy your outbound traffic or use remote sandboxes. You can use a regular expression for to […]
I’m working on a plugin that implements a custom post type, and it doesn’t need the editor, but I do want to upload files. I setup the everything like you normally would, but I noticed that the files weren’t being attached to the post when they were uploaded. I couldn’t find anything online, so I dug through […]