How to publish new posts/pages in root instead of subfolder, but keep old structure in place?

Mmmm, I think that if you are thinking on a major change for the project, you could proceed as follow:

  1. Of course, create a development snapshot of your site, somewhere else. Fork files and database, You can even fool the development vhost and the developer client so you dont even need to change the url-related parameters in the wp_options table of the database.
  2. In the database, replace every pattern of “http://mydomain.tld/blog/” for “http://mydomain.tld/“. Keep in mind that you may have a few variations of this pattern (with/without www, with/without https, etc.).
  3. After performing those tasks, you could move all the files and set a single Redirect rule to move the whole blog, with updated intra-links fitting the new url pattern and therefore not annoying google 🙂

If your site is showing the counting of “social shares” to the visitor for any URL, that would definitely be an issue. But it is already solved and mimicking the approach recommended at Encosia should be enough if this is an issue for your project.