I have the same problem as Denis. I need to change the defined category on a number of posts, but not all of the ones that are in the category. When using the Bulk Edit function of WordPress (I’m on 3.4.1, but this has been true since the feature was added) it only adds the selected category in addition to the one that was previously applied to the post.
The problem is simple. The bulk editor needs to show the existing category as already checked, so that it can be unchecked, and therefore removed from the posts. I understand the issue, however. If you select multiple posts that have different categories, then there is no simple way to indicate which category is associated with a post.
The potential answer, then, is to have an additional bulk edit feature that simply changes the category. Another approach might be to have a setting that defines the blog installation as monogamous, meaning that it can only apply a single category to a post. I personally think that this is the best approach, considering that we already have tags for deeper differentiation, and most bloggers only use single categories.
Now, you’d think that someone would have developed a plugin to handle this, but I can’t find any that aren’t for much older versions of WP, ala pre-3.x. I did find one that will indiscriminately move all posts in one category to another, but that’s too… brutal. I need a more nuanced capability.
If anyone has any ideas, I’d be more than pleased to hear of them.