Software Engineering in WordPress, PHP, and Backend Development

Tag: WordPress (Page 16 of 219)

Articles, tips, and resources for WordPress-based development.

WordPress Then, WordPress Now

TL;DR: The experience in writing for WordPress and developing for WordPress has become a much different experience in the last decade, let alone five years, so much so the difference between the two is so wide it feels like two completely different worlds.

In thinking about this, I started considering: What advice would I give to those who are new to the WordPress economy. What advice would I give my former self?


When I first started working with WordPress, it was generally an all-encompassing experience.

I was blogging almost daily – something I miss, but priorities and all that – and I was writing themes, plugins, and trying to make a case for how we could eventually build applications with WordPress. (No, I wasn’t the only one doing this but it was something that introduced me into a group of like-minded folks who all saw the potential – you know who you are 🙂.)

And, for the record, I did end up building some software on WordPress utilizing the REST API prior to the further de-coupling of the front-end such that what has become known as headless WordPress was a thing.

Anyway, all of that is to say:

  1. I was writing all of my content in WordPress,
  2. I was building all of my projects around WordPress.

These days, I still enjoy writing software for WordPress but it’s a very different experience. And I don’t know if I particularly like writing in WordPress despite giving the Block Editor a consistent go as much as I used to and despite the fact that I think I have a reasonably good idea as to where the project is ultimately headed.

As I was thinking about this, I started to wonder:

  • What does it look like to be a WordPress developer now?
  • What advice would I give my past-self?
  • What advice would I have or comments would I share with those in the next generation of developers coming up in the WordPress economy.
  • …and a few other things.

But before answering any of those things, I think it worth clarifying a few points.

Continue reading

Using a Registry, Subscribers, and Services in WordPress

TL;DR: I find the using a registry, subscribers, and services very useful when building backend-centric plugins and utilities for WordPress. This post walks through how to do it.


After working in with design patterns, object-oriented programming, and WordPress for years, common ways of solving problems are bound to arise.

This is how we got object-oriented design patterns to begin with, so maybe this is a WordPress-centric variation of that.

Though I’ve written about things such as registries in previous articles (and ones that are not that old even), it’s never a bad idea to revisit the same topic especially when there’s something to continue to add to the previous take.

Continue reading

Debugging WordPress with Ray, Part 2

TL;DR: Here’s another way to start debugging WordPress with Ray using Composer on a project-specific basis.


Last week, I wrote a brief introduction on Ray, what I like about it, and why I enjoy using it with WordPress. I also gave a brief tutorial on how to use it in your day-to-day but that was it.

Ultimately, I want to cover more about the application from a development and debugging standpoint (as I had some great feedback about it on Twitter – thanks for that!). Before doing so, though, I thought it would be more useful to start with one more tip on how to get started using it.

Namely, how to use Ray with WordPress in a Composer-based workflow.

Continue reading

Debugging WordPress with Ray, Part 1

TL;DR: This post gives a high-level overview of what kind of app Ray is and how to set it up for use in WordPress.


For as long as I’ve been involved with WordPress development, I’ve consistently seen developers – myself included – consistently use print_r and var_dump whenever they need to see what’s going on within their code.

And this is okay for smaller data structures like looks at objects, arrays, and so on. Then on the other end of the debugging spectrum, if you need to step through code to see what arguments are being passed into a given function from where and with what value, then using something like Xdebug is incredibly helpful.

Until recently, I didn’t think there was middle ground. But then I found Ray and I’ve been using it ever since.

Continue reading

Programmatically Search WordPress Posts By Date Range

TL;DR: The code shared in this post shows how you can modify the query that runs on the All Posts page so you can limit how you search posts to a specified date range.

It’s been a little while since I last wrote about using the post_where filter for modifying the search query that runs on a given page, such as the All Posts area of WordPress. But given the fact that there are a variety of uses for retrieving posts – and custom post types – in different ways, there’s a variety of ways to use this single filter.

Continue reading
« Older posts Newer posts »

© 2025 Tom McFarlin

Theme by Anders NorenUp ↑