Software Engineering in WordPress, PHP, and Backend Development

Category: Articles (Page 40 of 258)

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

WordPress Widgets: Refactoring, Part 12

As far as refactoring the WordPress Widget Boilerplate is concerned – especially given how far we’ve come since the project started eight years ago – we’ve done a lot of work.

We’ve brought it up to a far more modern standard and we’re making it far easier to work with it such that building future widgets should be easier. And this is not only from the standard of the boilerplate but from an object-oriented standard so that maintenance and code quality is higher.

In the last post, we wrapped up much of the work for the administration area and are ready to begin our work on code for the front-end.

We said:

Next, we’re going to look at rendering content on the front-end. We’re nearing the end, of the refactoring of the Boilerplate but there’s just a bit more to do before we’re ready to merge it into the master branch of the codebase.

So in this post, we’re going to pick up there. Now if you’ve been following along up to this point then you should have everything you need from the develop branch.

If not, be sure to pull it as that’s where we’re going to pick up in the remainder of the post.

Continue reading

Taking Aspects of WordPress for Granted

Because of the open-source nature of WordPress, one of the luxuries that many of us are used to having is complete control over the environment in which we’re working. Given that, you might even say that we take certain aspects of WordPress for granted.

And I’d say that for the majority of projects on which we work, this is true.

By that, I mean we’re not only able to customize, extend, and even limit the software (for certain types of users), we’re also able to change certain aspects of its configuration.

But if you’re in the business of doing work for others – an employer, as part of a contractor, or in some other situation – you may be limited in just how much customization you’re able to make.

Continue reading

Use the Current User ID with Pods for WordPress

The Pods Framework for WordPress, a specific utility that’s been around for a long time, offers a lot of functionality that can make working with advanced content types, custom settings, and so on.

Current User ID with Pods: Pods Framework

I mention this because Pods is a popular utility and there are some features available that provide some nice functionality.

Through the use of shortcodes, it’s possible to perform some powerful database queries to retrieve information to populate forms dynamically.

One use case that I see showing up in a few results is how to populate a shortcode with the current user’s ID. There’s a forum post about it here and a continued discussion about it on Stack Overflow, too.

But if you’re looking for a way to filter the content to do this without reworking some of the existing shortcodes, there’s another way to do it.

Continue reading

WordPress Class Serialization with PHP

If you’re used to working with models (in any foundation or framework, but specifically WordPress), then there’s a chance that you may need to serialize an instance of the model at some point.

Sure, writing the class to a database using PHP’s built-in functions is easy enough; however, introducing a bit of flexibility especially as it relates to making it available on other platforms is important.

For example, let’s say you’re building an application on WordPress that’s going to have some type of unique piece of information represented in a model. The model will then be accessible via a mobile application through the REST API.

WordPress Class Serialization: PHP

Arguably, one of the easiest ways to get this done is to use JSON. It’s a format that works across various languages and platforms, can be easily serialized and de-serialized by said platforms, and sent across the wire as needed.

And it’s incredibly easy to implement this in PHP. You just need to make sure your class implements the JsonSerializable interface.

WordPress Class Serialization: PHP

From the documentation, the interface does the following:

Objects implementing JsonSerializable can customize their JSON representation when encoded with json_encode().

The only method a class needs to provide is jsonSerialize, and though it’s likely you will want to serialize all of the properties of an object (as well as its state whenever its called), you can customize the implementation however you’d like.

Continue reading

« Older posts Newer posts »

© 2025 Tom McFarlin

Theme by Anders NorenUp ↑