Software Engineering in WordPress, PHP, and Backend Development

Category: Articles (Page 93 of 258)

Personal opinions and how-to’s that I’ve written both here and as contributions to other blogs.

Thoughts on Community-Based Support Forums

Last week – and this weekend – I’ve been reading the comments on Pippin Williamson’s posts about his company’s decision to adjust prices on Easy Digital Downloads (and for those who are curious, I applaud it).

That’s a conversation in and of itself, and there’s a long comment thread that I think is worth reading for anyone involved in WordPess product development, but I digress as that’s the point of this post.

Reflections on a Price Increase

Some readers have left comments throughout the comment feed discussing the notion of community-based support forums. The whole thread is worth a read but:

  1. EDD used to offer community-based support forums (in addition to their other support),
  2. I’ve built and worked on products that had community-based support forums

And, in retrospect, I absolutely do not think it’s a wise decision for a WordPress-based product shop to offer them. I have my reasons, I’ll elaborate, but I want to be clear that I’m constraining this strict to WordPress because it’s what I know.

I can’t speak for any other segments of our industry.

Continue reading

Namespaces and Autoloading in WordPress

Last week, I gave my presentation at WordCamp Atlanta on Namespaces and Autoloading. (the full title was Namespaces, Autoloading, and Improving Plugin Architecture but that’s a mouthful, isn’t it?)

Because of the nature of the talk, I’ve opted to write a post to accompany the post, share the slides, and share an example plugin GitHub to help support the talk.

So if you were in attendance, thank you(!) and here’s the post, I promised. And for those of you who didn’t attend, I hope this post still helps to demonstrate the concepts and topics I discussed at WordCamp.

Continue reading

Homebrew, Node, and Gulp for WordPress Development

Though I have a suite of tools I prefer to use on projects that I work on from the ground-up, the nature of contract work is that you’re not always able to use those tools.

Instead, you have to work using the tools provided by the client which usually come into play whenever you inherit a project from a previous developer.

To be clear, this isn’t knocking anyone’s choice of tools. I don’t have a position here or there on that. Instead, I think it’s import to know how to get up and running with some of those tools easily.

Homebrew, Node, and Gulp: Terminal Installation

For example, we’ve been working on a project that requires Gulp which in turn requires Node which can be installed easily using Homebrew. It’s a lot of steps to work backward, right?

To get started with Homebrew, Node, and Gulp in WordPress development is pretty easy. I’ve outlined the steps below and done what I can to explain what each package does so you know what you’re installing and what you’re doing if or when you encounter a project like this.
Continue reading

Direct Database Queries in WordPress

If you got back through any of the posts I’ve written in the last, say, two years, you’re likely to find me advocating using available APIs over directory database queries nearly every single time.

And the truth is that I still lean in that direction. That is, if there’s an abstraction or an API that’s available for doing something specific, then I try to use it.

But in a couple of recent projects, I’ve been working with some relatively large datasets (large in comparison to non-enterprise level datasets). And in doing so, I have tried to make sure the updates to the data are as fast as possible.

Direct Database Queries for WP VIP

In situations like this, though the WordPress Coding Standards don’t like it, I find direct database queries occasionally to be the best option for doing so under certain conditions.

Continue reading

Using the PHP Interpreter When Working With WordPress

Recently, I’ve been working on a project that requires a lot of work with dates. Depending on the nature of the work, there are times in which this can be easier than others.

Using Visual Studio For Date Comparison

On the one hand, if you’re making a simple comparison between, say, the values of two months then that’s not a big deal. On the other hand, if you’re dealing with months, days, years, the current date, timezone offsets, and different formats, then it can be a bit more complicated.

The point of all of the above, though, is not about strictly working with dates. Instead, it’s about the challenges that come with needing to write, test, and work with source code.

And if you’re in the habit of writing code, testing it in a browser, doing some form of debugging or dumping information onto a screen, and then repeating the process, there are easier ways to deal with this.

Continue reading

« Older posts Newer posts »

© 2025 Tom McFarlin

Theme by Anders NorenUp ↑