Software Engineering in WordPress, PHP, and Backend Development

Author: Tom (Page 47 of 427)

My Unplanned Halftime (A “What’s Up?” Post)

I’m not one to usually start a blog post with “it’s been a while since I’ve last blogged” because it’s usually followed by an apology as if the people who consistently read the blog or follow the blog have been waiting with bated breath for the next post to come out.

But is that ever really the truth? I can’t imagine that scenario.

That doesn’t mean I’m not doing that with this post, though. Because it has been a while since I’ve blogged. I’m not going to be making any apologies for it, though.

Instead, how about a few updates as to what’s been going on and what I’m planning to do with the rest of the year?

Continue reading

How To Remove Images with DOMDocument

I’ve written about DOMDocument in a few other posts (1, 2, 3 to share a few) but I continue to find it useful in different ways.

Remember, DOMDocument is a class in PHP that allows us to manipulate the HTML document before rendering it in the browser.

From the manual:

Represents an entire HTML or XML document; serves as the root of the document tree.

Whenever I think of working with the saveHTML function, I think of needing to serialize the new information into a file or other output stream before sending it to the browser.

But we don’t have to do that. It can be done in memory.

Continue reading

The Difference in cURL and WordPress Requests

cURL is a very popular PHP library that I’ve referenced in several posts other posts (1 and 2, for example). And it’s one that I think should be reviewed, explored, and possibly used by anyone working in PHP (yes, even those working in WordPress).

But because of the native WordPress APIs, we do have a level of abstraction that allows us to achieve much of the same functionality (if not the same functionality).

Specifically, I’m talking about wp_safe_remote_get.

This function is ideal when the HTTP request is being made to an arbitrary URL. The URL is validated to avoid redirection and request forgery attacks.

I specifically mention the safe variant of this function for the definition above (there is another variant, but it’s important to take precautions against arbitrary URLs for security reasons).
Continue reading

Episode 6 – PHP, UI, UX, A11Y, APIs (Oh My)

Regarding the podcast, two of the best things that’ve happened since the previous episode is that the number of questions is steadily increasing and people are saying they appreciate the length of the show.

So that’s good stuff, as far as I’m concerned.

Anyway, if you’ve previously subscribed to the show, then this episode should be available in your favorite app or service.

With that, here are the notes for this episode.

Continue reading

When The Browser and Terminal Show Different Versions of PHP

If you happen to see two different versions of PHP whenever you run:

  • php -v in the console and visit
  • phpinfo() in the browser

Then this usually means the version of PHP that your web server is using is different than the version of PHP your command-line is using.

Specifically, this means you likely have more than one installation, and the web server is using one version, and the terminal is using a different version (in addition to using a CLI version of the interpreter).

Of course, if you’re seeing the browser and the terminal show different versions of PHP then something is wrong. You want them to be the same, but depending on how your system is configured, then  you may need to update your environmental variables.

I was recently having issues with this with various installations of PHP installed via Homebrew and with my local installation of Valet.

This is what I did to fix it.

Continue reading

« Older posts Newer posts »

© 2025 Tom McFarlin

Theme by Anders NorenUp ↑