Software Engineering in WordPress, PHP, and Backend Development

Author: Tom (Page 328 of 427)

Programmatically Mark a Comment as Unapproved

In a recent project, I was working with someone who wanted to mark a comment as unapproved regardless of the value that was set in the WordPress settings.

Specifically, the person was using a plugin that allowed for certain attachments to the plugin. In order to make sure that the comment could be screened prior to allowing it to go public on the blog, they wanted to moderate it from the dashboard without needed to completely enable comment moderation across the board.

This is something that’s relatively easy to achieve programmatically.

Continue reading

Functions.php vs Plugin, Who Wins?

When it comes to introducing custom functionality into a WordPress project, the debate between functions.php vs. plugin usage is nothing new.

Generally speaking, I think of themes are presentation and plugins as functionality that transcend whatever theme or themes with which they’re installed.

But sometimes, this delineation isn’t so clear. For example, let’s say that you’re working on a theme that needs to introduce a custom meta box – or several – into the post editor screen.

Though this is presentation related in that it will impact what’s displayed to the users, it’s also a bit of custom functionality but it’s only relegated to this particular theme.

What then?

Continue reading

Tell Me: What Have You Done?

When it comes to building, launching, and maintaining your own projects – be it software, hardware, blogs, sites, songs, paintings, …, anything, etc. – one of the things that you have to be prepared for is the amount of criticism to which you’re opening yourself up.

Granted, you have to take the good with the bad, but the problem with the bad is that it’s so much easier to take to heart and/or focus on that the good, right?

But the irony in this is that not only do we subject ourselves to said criticism, but some also offer criticism to what others have done.

If you’re on the receiving end of said criticism, it’s easy to get defensive; if you’re on the giving end of the criticism, it’s easy to mask it as constructive when, in fact, it may not be at all.

So how do we deal with this kind of stuff on a day-to-day basis?

Continue reading

Flatdoc For Documentation with Markdown

Several times, I’ve mentioned that I’m a huge fan of markdown – I use it to write emails, I dig that that’s how GitHub handles README files, I use minor variations of it in my blogging, and I’ve got a favorite app for it.

Thanks to a heads up from one of my partners, I can now write documentation with markdown.

Here’s the thing: I’ve mentioned that I’m a huge advocate for code comments – I think it’s better to go a little overboard for the sake of clarity than not, especially in open source projects.

And sure, PHP DocBlocks and tools like PHPDocumentor make it relatively easy to generate documentation, but documentation like that is best suited for other developers. It’s not exactly end-user friendly, right?

In that case, you’re talking about writing a manual.

Continue reading

Don’t Copy WordPress Plugins

The conversation about the ethics of what it means to copy WordPress plugins, theme, applications, and more isn’t new. In fact, just the other day, I was having a conversation with a friend of mine about what competition looks like in various marketplaces.

Based on my conversation with him (and a number of others, for what it’s worth), there tends to be two schools of thought on releasing products into a marketplace that can be summed up in the following two statements:

  • If a similar product already exists, don’t do it.
  • If a similar product already exists, do it.

Sure, that’s an oversimplification of the idea and there’s a lot to be said about both; however, I’ve seen this same thing discussed in the context of both WordPress theme and plugin development.

Specifically, the quote I read was as follows:

1. Check the plugin repository to see if similar plugin exists.

2. If so, don’t reinvent the wheel.

Initially, I categorically disagreed with this perspective. Continue reading

« Older posts Newer posts »

© 2025 Tom McFarlin

Theme by Anders NorenUp ↑