Software Engineering in WordPress, PHP, and Backend Development

Category: Articles (Page 196 of 258)

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

WordPress Meta Boxes: Separating the Logic

This is the second post in a series on how to achieve simplicity with WordPress meta boxes.

In the previous post, I talked a bit about how working with WordPress meta boxes can be a bit of a hassle especially if you’re used to doing so in such a way the keeps all of the logic contained within a single file and a handful functions.

For example, if you’re working on a theme, then it’s likely that you’ve got a set of functions declared either in your functions.php file or file referenced by said file that is responsible for making a call to add_meta_box and all of the necessary arguments for rendering the meta box.

If you’re working on a plugin, it’s likely that this isn’t all together different; however, you may be approaching this from an object-oriented perspective. If that’s the case, then you may have a similar setup as above which isn’t really that different except you’re using classes and functions.

Continue reading

WordPress Meta Boxes: Aiming for Simplicity

This is the first post in a series on how to achieve simplicity with WordPress meta boxes.

For anyone who has does any kind of work with WordPress meta boxes, you know that it generally consists of the following steps:

  1. Define the meta box
  2. Define the callback functions responsible for displaying the markup

Pretty simple, isn’t it?

Of course if you’re looking to introduce a more advanced functionality into your meta box then you’re likely going to want to introduce stylesheets, JavaScript dependencies, nonce values, and perhaps even tabs to logically separate the options.

Given the fact that I’ve recently looked at some of the various ways to save data in WordPress meta boxes, I thought it might be work sharing one way to help separate the business logic from the presentation logic as it relates to incorporating WordPress meta boxes either in themes or plugins.

Continue reading

The Art of Solving Problems in Your Sleep

I don’t consider myself a “creative” – I think that term is usually designated for designers, artists, and illustrators, and other types. Developers – although we create things – are creative in a different way.

It’s more about problem solving, I guess.

Anyway, one of the things that seems to be the most common among people of the similar trade is the challenge that comes with having to solve problems that we’re stuck on during the daily grind.

I can’t speak about designers (though I know this is something that affects those who I do know), but in terms of developers, I know that the problem works something like this:

At some point during a project, we get mired in a problem and we’re unable to solve it. The more we try to solve it, the more the frustrated we get. Ultimately, we step away from the computer, but what happens in a few hours?

We end up solving the problem while focused on something else.

It’s an interesting thing, and it’s something around which plenty of research is done (and, I’m sure even has a proper name for it), but the point of all of this has nothing to do with mentioning the fact that this exists.

It’s how we – as developers or even those creative types – can leverage it to our own success. Continue reading

Two Ways to Save Meta Box Data in WordPress

Recently, I was having a conversation with a friend about some of the various ways to serialize the values that are present within a collection of meta boxes that are defined for any type of post – be it a post, page, or a custom post type – within WordPress.

For example, imagine that you have a custom post type that has, say, four different meta boxes that are available below the main content area.

These meta boxes can be laid out in one of two ways:

  • The meta boxes can be listed individually with each meta box having its own set of values. Think of WordPress’ Excerpt field, Discussion field, and and Sharing Field.
  • The meta boxes can all be contained within a single container accessible by individual tabs.

The question is does the way that the meta boxes are displayed influence how the values are serialized in the database?

Continue reading

GitHub Is Not Your CV (Nor Is Your Blog)

As it relates to developers, it’s been said that certain sites provide a paper trail of the work that we’ve done since we’ve been working in a professional capacity.

For example:

  • How many times have you heard that GitHub is your CV?
  • Or what about the idea that your blog is a paper trail of your thoughts about the work that you’ve done and/or the industry in which you’re involved?
  • Or perhaps you’ve even heard that sites such as Stack Overflow (or any of the other Stack Exchange sites) provide some type of portfolio or journal that provides a glimpse as to the type of information you’re after, and the type of information in which you’re well-versed.

From the outset, I think that the overall idea behind each of the aforementioned points is well-intentioned, but I’ve rarely – if ever – heard an objection to the premise that these sites provide a true CV for a programmer.

That is to say that no one seems to take account that one of the – if the the  – largest factors that stands over each of the points above: Time.

In short, I don’t believe that any of the aforementioned sites (or related material) serve as a CV. If anything, they serve as a documentation of our history in what we’ve been doing.

There’s a very big difference between the two, and if we end up thinking that they provide us with some type of CV, then we may run the risk of missing out on really good contributors, developers, authors, and so on.

Continue reading

« Older posts Newer posts »

© 2025 Tom McFarlin

Theme by Anders NorenUp ↑