Tom McFarlin

Software Engineering in WordPress, PHP, and Backend Development

Page 349 of 428

Should I Do This in a WordPress Theme or Plugin?

Last week, a fellow WordPress developer and I were having a conversation about a particular feature that he’s been contracted to implement for an existing site.

In short, he was trying to decide between introducing the new feature in the form of a child theme or in the form of a plugin.

It’s a question that I see raised more often than not, but I think there’s a series of questions that we can ask ourselves before jumping into writing any code.

Generally, it has to do with the true definition of a theme and the true definition of a plugin. Of course, there’s room for deliberation, but here’s how I normally see it.

Continue reading

Strategies For Supporting WordPress Plugins

Supporting WordPress Plugins

When it comes to writing, releasing, and maintaining WordPress plugins is figuring out how to actually support your work once it’s released.

After all, the majority of work on software is maintaining the codebase and responding from all of the feedback given by users or customers.

In my latest article on Envato, I talk specifically about strategies for supporting WordPress Plugins – I lay out some of the problems that currently exist, and also invite readers to share their experience, concerns, and suggestions with what’s available today.

Continue reading

Using Kaleidoscope For a Git Diff Tool

In a previous post, I’ve mentioned that GitBox is my git client of choice. In short, I think it’s UI is simple and it’s extremely easy to manage all of the standard git tasks.

GitBox

And, of course, if you find yourself needing to issue some commands from the command line, it’s really easy to install git for the command line.

But for anyone that’s done an any amount of work with source control, you know that a portion of your time is resolving merge conflicts and sifting through code using a diff tool to help manage the merging.

Though there’s a lot of good options available, the latest version of Kaleidoscope has become my favorite application for managing code diffs. After installing it, here’s how you can configure it for your environment.

Continue reading

Writing a Plugin (and Doing It Live!)

Earlier this week, Pippin Williamson (of Pippin’s Plugins) sent out the following tweet:

Neat idea, right? Have he and Andrew Norcross – a fellow WordPress developer – create a plugin during the course of a WordCamp that could be released for free.

So I tossed my idea into the ringer:

You can actually read the entire conversation here.

This has been a plugin that I’ve wanted for a long time, and I assume anyone who’s actually maintained a blog for a significant amount of time would do the same.

As it turns out, I’m going to be joining Pippin and Norcross in writing a plugin for exactly this. And we’re gonna do it live.

Continue reading

« Older posts Newer posts »

© 2026 Tom McFarlin

Theme by Anders NorenUp ↑