middleman-alias
is a small extension for Middleman that allows you to add alias information to the frontmatter of any page or post. SEO friendly redirect pages are generated at the alias URL.
Add the gem to your Gemfile:
gem 'middleman-alias'
And then execute:
$ bundle
Or install it directly with:
$ gem install middleman-alias
First you need to activate the module in your config.rb
. Make sure
that it is the LAST thing activated. It's important that other modules
have the opportunity to do their own URL manipulations before the
alias redirect pages are generated.
activate :alias
Then you can add an alias
to the frontmatter for a page or post and
middleman-alias will generate a SEO friendly redirect page at that
location.
Say that you have a page at /foo.html
, but that the page used to live
at /old-foo.html
. In the frontmatter for foo.html
you can alias it
to the old address.
title : "A post about foo"
alias : /old-foo.html
Now someone can visit your middleman site at /old-foo.html
and they'll
be redirected to /foo.html
.
If you end an alias with a /
that alias will be treated as a virtual
directory.
title : "A post about foo"
alias : /old-foo/
The example above will result in a redirect file being generated at
/old-foo/index.html
, which will be accessible to browsers at /old-foo/
.
You can find the code on GitHub.