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.

Read More

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.

Read More

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.

Read More

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?

Read More

Developer Fitness in 2018: Quarter 3

At this point in the year, it’s evident that I’ve been sharing the things I’m doing outside of sitting at a computer most of the day.

Thus far, I’ve shared:

And if you’ve not read the rest of what I’ve been sharing since last year, you can read them using the following links below:

  1. Developer Fitness: Getting & Staying in Shape
  2. Developer Fitness: More Progress, My Devices, Apps, and What’s Next

As we’re headed into the fourth quarter of the year, it’s the time that I take a look back at what I did this summer and how I stacked up against some of my goals and what I’ve been doing in the past year.

At the end of the previous post in this series, I mentioned:

So that’s the plan for the upcoming quarter. I’m sitting at 179 right now and I’d love to hover around 180 – 185 so if I can stay in that range, I’ll be happy.

I’m extremely interested to see how next month’s challenge pans out. And I’m eager, for those of you who are working to work out, to share your stories, posts, reflections, etc. on your blog, via email, or via Instagram.

With that said, here we go with 65 miles and counting.

So here’s how everything panned out over the course of the summer.

Read More