Set where the Blog's pages and posts list go

v0.0.3

Mishka Blog serves posts, categories, tags, authors and its list of posts from pages of the site. This guide sets where those pages go for a migration run, so the Blog answers at the addresses your WordPress site used. You finish with the Posts list page and Blog pages choices set, and a plan in the dry run that says what will be created and moved.

What it moves and how it works, on one page: Mishka CMS Migration.

Before you begin

Choose the Blog pages

The Blog serves each kind of record at its own page. Blog pages says what the run does with them:

ValueThe run
Use the site's Blog pages and create any that are missing (default)Moves the Blog pages the site has to where the post addresses and the posts list choices put them, and creates the missing ones there.
Create Blog's default pagesCreates the missing ones at the Blog's default /blog paths and moves none. Your old addresses reach them through 301s.

With the default, Keep the WordPress addresses and a structure the posts share, the post page's path becomes that structure behind the language, such as /:lang/:year/:monthnum/:slug. The category, tag and author pages take the source's bases, such as /:lang/category/*slug, /:lang/tag/:slug and /:lang/author/:slug. Without a structure, a page stays where it is, and a missing one is created at the Blog's default.

Choose the posts list page

Posts list page is where the Blog's list of posts is served:

  • WordPress's posts page (default): at the source's posts page, or at / when the source shows its posts on its front page.
  • The front page /: at /.
  • Keep the Blog's /blog: the list stays at /blog.
  • The address of one of your pages: the list takes that page's address. The page is archived to free it, and you can restore it from the archive.

When the list moves, the Blog's /blog is answered by the redirects.

Read the plan

A dry run writes nothing, but it plans the Blog's pages. Open the run's details. About the source shows Blog pages with one sentence for each kind of step. A dry run says Creates /tag/:slug or Moves /blog/:slug to /:year/:monthnum/:slug, and the import says Created and Moved. The path /:lang is shown as /. A second import writes nothing more, because only what differs is written.

Fix a page that is taken

A page of yours at the path a Blog page would take, or at that path without the language, is never written over or archived. That Blog page is neither created nor moved, and the plan says Needs your decision: /tag/:slug is already a page of yours; move it and run again. Move or rename your page, then press Run again.

A missing Blog page also waits while the admin running the job may not set up the Blog's components and pages, and the plan says waits for an admin who may set up the Blog's components and pages. Run the import as an admin who may. See Permissions and plugin events.

Next steps