Software Engineering in WordPress, PHP, and Backend Development

Author: Tom (Page 68 of 427)

When You Get Bored with WordPress, Part 1

One of the more common things that we see in the technology industry is people changing jobs or, at the very least, having a desire to learn new technology and begin employing it in their work.

The rate at which things change is incredibly high contrasted with some other industries, and I think that’s why some of us get into the industry, to begin with. It’s hard to get bored, right?

On the flipside, I believe this can also breed a feeling of fatigue. If there’s always “the next thing to learn,” when are you ever really an expert at the last thing you set out to learn?

Having worked with WordPress in some capacity for over a decade now (even if it was just using it as a blogging platform or to do minor tweaks for a site), a lot has changed. Given the factors above, why wouldn’t it, though?

Bored with WordPress: WordPress.com

So when I hear that people are bored with WordPress and are looking to move away from it and into something new, I tend to wonder what specifically bores them. But that’s another topic because I think there are a variety of facets to it.

At the same time, though, I’ll occasionally hear people they are bored with WordPress because they find that they’ve learned all there is to know about the platform or at least all that interests them, and they believe that there’s no longer anything left to explore.

I call that into question, though. Because when you strip away all of the stuff that’s tertiary to WordPress, as software, I think there’s an incredible amount to learn and I’d even go as far as to say that there’s near endless potential in what you can do with it.

Continue reading

WordPress Database Merging Made Easy with WPMerge

This is a sponsored post from the fine team over at WPMerge. The following tutorial provides all you need to know to get started.

Whenever we’re working with WordPress environments, it’s common for us to clone the production database to our local development database but not necessarily the other way around.

For example, let’s say that we do work in the local development database that contains new posts, perhaps new WooCommerce orders, or other data that you’d like to share with the production site.

At this point, you have two versions of the database that you’d like to merge without losing changes in either environment.

To manage this, we have a few choices:

  1. You can note all changes made in the local development site and meticulously perform them on the production site.
  2. You can copy changed rows from the development site and run the queries on the production site. The problem with this is when the new data comes in; users may have the same IDs used in the local development database ultimately creating a conflict.
  3. With currently available tools, you can move the development database to the live site. But you’d lose the vital changes like comments or orders that happened on the live site during development.

None of them make for an ideal deployment workflow.

Continue reading

An Alternative to the WordPress template_redirect Hook

The majority of the work that I do right now focuses on custom plugins or utilities that work on top of WordPress.

If you were to conceptualize how many of the projects that I build are put together, you’d review WordPress (and all that it entails) as the foundation, and then the code has having a layer that communicates with WordPress, and that may communicate with third-party APIs.

When doing this, though, there’s often a front-end component that requires I render information into templates. Though building templates for WordPress aren’t inherently difficult (though I do wish we had a bit more than template tags – such as a templating engine, that’s another post), I think it’s worth looking at a couple of ways that we can handle custom templates that we bundled with plugins.

One of the first questions that’s often raised with this statement, though, is

Why would you include custom templates in a plugin?

And I get it on some levels.

  1. Keeping templates in a plugin blurs the lines a bit between themes and plugins especially when you leave themes for presentation and plugins for business logic,
  2. Asking users to copy theme files on from one location to another is bad user experience.

But there are a few rebuttles or perhaps outright exceptions to the above cases.

Continue reading

Using Kanban in WordPress Development

Periodically, others will ask how I manage to organize the various tasks, assets, resources, and related things throughout a project. First, I’ve decided to keep Pressware small (and this is for some reasons), so it allows me to run it differently than if it were, of course, larger.

Using Kanban in WordPress Development: A Basic Example

Secondly, I typically use a very scaled down version of a kanban board. For those who aren’t familiar, kanban is defined like this:

a Japanese manufacturing system in which the supply of components is regulated through the use of an instruction card sent along the production line.

To that end, I thought I’d share a brief overview of how I typically setup each column and each card as well as the tools I use to handle each task.

Continue reading

Quick Tip: Sanitize Post Data in WordPress

The more I begin to try to use PSR-2 coding standards and tools such as GrumPHP (and those related to it), the more I find that the quality of the code I write can be significantly improved in minor ways.

PHP Coding Standards with Code: PSR-2

And I don’t mean to sound contradictory: I mean, the idea of having something “significantly” improved in a “minor” way doesn’t exactly jive, does it?

But hear me out.

Imagine that you’re able to write clean, readable, maintainable code using coding standards that are not only modern, but built into PHP, play nicely with WordPress, and that is more readable than some of the other ways we may have done it in the past or when using other tools for coding standards.

Wouldn’t you be interested?

Continue reading

« Older posts Newer posts »

© 2025 Tom McFarlin

Theme by Anders NorenUp ↑