This is my dumping grounds for all things WordPress. I’ll post themes, plugins, tutorials, and hacks under this topic. Have a look around. There’s plenty for everybody.

Introducing the "Powered By" WordPress Block Plugin

Officially, I released my first WordPress block plugin today. X3P0 - Powered By is now hosted on the WordPress plugin directory. Woot! Woot! 🥳 Powered By, for short, is a simple block type for displaying a randomly-generated message, such as: Powered by coffee. Powered by crazy ideas and passion. Powered … Continue reading →

I finally updated the Professional WordPress Plugin Development book page for the 2nd edition today. Yeah, it is a few months later than I expected, but at least it is done now. As always, it is a work in progress.

If you’re feeling nostalgic, you can check out the archived 1e book page.

Just Me and My Laptop: Two Years After WordPress

I am nearly two years post-WordPress. I moved my personal blog away from the software that has given me a career and provided a way to share my thoughts with the world for over a decade. But, it was never about the system. All I really needed was a keyboard … Continue reading →

Contextual customize partials

While building the Exhale theme, my latest WordPress project, I wanted to build a cool feature into the customizer. The idea was that the user would have an option to select their preferred featured image size. When selecting a size, their featured images would be refreshed in the preview panel … Continue reading →

I've been in the lab

It’s been two years since I’ve built a new WordPress theme. That’s assuming we’re not counting starter themes. I was uninspired. It wasn’t until I launched the redesign of this blog that I found my muse once again. I had the beginning of an idea. I had a starting point … Continue reading →

Do we need advanced starter themes?

Is there a place for advanced starter themes in WordPress? Or, should the focus be on simpler starters to help theme authors learn the basics?

Life after WordPress

It’s been three months since I made the switch from WordPress to a custom system for my blog. This was one of the toughest and scariest changes I’ve made in the 15+ years I’ve been running this site. What if I break things? What if I’ve wasted all this time … Continue reading →

Whitelist validation in WordPress

Far too often when doing code reviews, I see developers lean too heavily on sanitize_text_field(), using it as a sort of catchall for sanitizing data. That’s usually not a good idea. Data should be sanitized based on what sort of data you’re expecting. In this tutorial, I’m going to cover … Continue reading →

I did a quick interview on Web hosting with iThemes. Hosting isn’t an area I’m particularly interested in, but it’s all a part of the process. I tend to think in terms of having ready-made solutions that aren’t a lot of work when it comes to the average user.