Once you’ve had your site for a while, it’s only normal for it to grow and change. Over time you might decide that you want to expand the topics you cover. Or you might decide just the opposite – to narrow your niche and drill down on specific areas.

Whatever your case may be, there’s a chance that eventually you may need to add more categories to your site (as well as delete some).

When that day comes, there’s a good chance you’ll need to assign some of your pre-existing posts to those new categories.

If you only have a few to assign, it’s not really a big deal.

But if you have quite a few, then moving them all at once would seem to be ideal.

Below we’ll go over exactly how you can do that.


Using the Bulk Edit Feature

To assign our posts to new categories, we’re going to use the Bulk Edit feature in WordPress.

Let’s say I have a blog that talks about different countries in Europe, and so I have a different category for the different countries I’m covering – Spain, Portugal, France, Italy, etc.

After some time, I find that I’m writing about Spain a lot. And so because I have so many posts about Spain, I want to add subcategories for the different cities I’m talking about – Madrid, Barcelona, Seville, etc.

The first thing I’ll want to do is go to my categories page  (Posts > Categories) and add my new categories as “child” categories (i.e. subcategories) to the “parent” category (in this case, the category “Spain”).



Assigning Posts

After my categories are added, I go to the page displaying all my posts (Posts > All Posts).

Let’s say I first want to add some posts to my newly create child category for Madrid. From the All Posts page, this is how I would do it.

  1. Choose the posts I want to assign to the Madrid category.



  1. Next, I’m going to use the pulldown menu at the top to select “Edit,” and then I’m going to hit “Apply.”


  1. On the next screen, I’m going to check the subcategory I want the posts assigned to, and then hit the update button on the bottom right.



You can now see that my posts have been added to the Madrid category.



*Note: In the example above I’ve assigned the posts to a subcategory/child category, but assigning posts to another top level category would work in exactly the same way.


Removing Posts from Categories in Bulk

I can hear some already, “How do I remove posts from categories in bulk?”

Unfortunately, as removing multiple posts from categories is not something that many have a use for (at least relatively speaking), that’s not part of the WordPress core.

You can use the quick edit function to do them individually. Go to your posts (Posts > All Posts), hover over the title, and then the Quick Edit option will appear.



Once you click that, you will see that you can easily check and uncheck different categories.


There is, however, a plugin that can do that for you called Batch-Move Posts.

Let’s say I wanted to move some of my Spain posts to a category called Food. But I also wanted to remove them completely from my Spain category.

With the Batch-Move Posts plugin, I would go to the new Move Categories section that the plugin adds (Posts > Move categories).

Then I would select my Spain category at the top to get all my posts from that category.

Then I would select the ones I wanted moved to my Food category and add them to the Food category at the bottom.


And when I do that, I’m automatically redirected to a new page that has those two posts on it. There I select the Spain category at the bottom of the page, and I delete my posts from that category. And that’s it.