Middleman::Autometatags
This is a middleman extension that helps manage metatags. It will make guesses pages on the page metadata and data/site.yml to set things correctly.
SEO gem for your Middleman apps.
Based on meta-tags Rails gem and the middleman-meta-tags middleman extension.
Installation
Add this line to your middleman's Gemfile:
gem 'middleman-autometatags'
Usage
Configuration
Edit config.rb
and add:
activate :autometatags
Create data/site.yml
This will look inside of data/site.yml file to find any site wide defaults.
For example
title: "Will Schenk"
twitter_author: "@wschenk"
Title
set_meta_tags title: 'Relevant title'
title 'Relevant title'
Description
set_meta_tags description: 'Powerful website full of best practices and keywords'
description 'Powerful website full of best practices and keywords'
Keywords
set_meta_tags keywords: %w(some seo keywords).join(', ')
keywords %w(some seo keywords).join(', ')
Display meta tags
Into your <head></head>
tag:
auto_display_meta_tags
By default, there is a |
as separator between title and website name.
You can modify it by adding: separator: '»'
Autotagging
This will look inside of data/site.yml file to find any site wide defaults. Then it looks the page meta data to attempt to display the following keys:
- MM
title
=> METAsite
- MM
description
=> METAdescription
- MM
title
=>og:site_name
- MM
twitter_card
(defaults tosummary_large_image
) => METAtwitter:card
- MM
title
=> METAtwitter:title
- MM
publisher_twitter
=> METAtwitter:site
- MM
twitter_author
=> METAtwitter:creator
- MM
description
=> METAtwitter:description
- MM
pull_image
=> METAtwitter:image:src
- MM
title
=> METAog:title
- MM
description
=> METAog:description
- MM
pull_image
=> METAog:image
Manually adding addition tags
Create a helper method inside of your config.rb, like so
helper do
def my_tags
set_meta_tags key => value
end
end
And add it to the layouts and views that you need.
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request