If I understand you correctly, you have two different types of content aware sidebars.
– One that should be shown on a specific category page
– One that should be shown with all posts
And you do not want the “category sidebar” to be shown with posts containing that category.
This can be fixed with the “Exposure”-option. Set it to “Archive” for all category sidebars and you should be good to go.
It can’t be done with Quick Edit yet though, so if you have a lot of sidebars it might take some minutes.
Edit:
But to answer your first question, I am pretty sure it is possible to replace all other content aware sidebars that might be set. Make sure that the sidebar you want to replace with is loaded last and set handle to “Replace”.
I tried what you suggested – setting all category sidebars to “archive” but I am still getting all the category sidebars on a post page for the categories that the post has been assigned too.
View this post page as you will see there are several sidebars showing.
But I want the sidebars to be the same as they are on the post feed page View Here – these are the default sidebars.
I’ve even tried to create sidebars and selected “All posts” with the same widgets as the page immediately above. I tried selecting it as “single” and as “archive” – always selecting “replace” but every individual post page shows the same as the top link.
Other things I can try?
If the category sidebars has been set to only be shown on Archive, then they really shouldn’t be pulled from the database on other pages, but of course there can be a bug somewhere.
The order in which sidebars are pulled from the database is: the actual order, then handle value (replacing sidebars are loaded before merging sidebars), and lastly publish date.
If you want to change the actual order of a specific sidebar, open the Screen Options in the upper right corner of the editor page and select the meta box Properties (or something similar to that). Set it to 99 or something high – default is 0. Now this sidebar will be loaded as the last one.
Of course I will see if I can reproduce your problem and try to find a possible bug when I get time.