This is something no one else has ever done right and many people use b2evolution just for this single feature alone:
b2evolution remembers ALL the slugs, past and present, of ALL your posts/pages/articles.
And, then no matter which URL scheme you use in the future, b2evolution will automatically redirect all your old URLs to the current canonical URL of each post/page/article.
For example, you could have a post that currently resides under
But in the past that article has used the slug
old-slug-of-article as well as
old_article_slug. It may even have has a short slug like
b2evolution has the memory of all old slugs (which can also be imported from WordPress or Markdown). This allows b2evolution to automatically catch any old URL such as:
And ALL of these will be redirected to the current URL of your post, in this case
This is because b2evolution uses unique slugs per post/page/article and by default remembers all changes.
More info: Managing Item Slugs