Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/johnvuko/jt-rails-meta
Manage HTML meta tags for SEO in Ruby On Rails
https://github.com/johnvuko/jt-rails-meta
html meta meta-tags metadata opengraph-tags rails ruby search-engine-optimization seo seo-meta seo-tools seotools twitter-cards
Last synced: about 1 month ago
JSON representation
Manage HTML meta tags for SEO in Ruby On Rails
- Host: GitHub
- URL: https://github.com/johnvuko/jt-rails-meta
- Owner: johnvuko
- License: mit
- Created: 2015-06-30T22:18:10.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2017-10-26T15:46:45.000Z (about 7 years ago)
- Last Synced: 2024-10-09T11:24:03.001Z (about 1 month ago)
- Topics: html, meta, meta-tags, metadata, opengraph-tags, rails, ruby, search-engine-optimization, seo, seo-meta, seo-tools, seotools, twitter-cards
- Language: Ruby
- Homepage:
- Size: 11.7 KB
- Stars: 3
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# JTRailsMeta
[![Gem Version](https://badge.fury.io/rb/jt-rails-meta.svg)](http://badge.fury.io/rb/jt-rails-meta)
JTRailsMeta help you to manage HTML meta tags like title, description, keywords used in Search Engine Optimization (SEO).
## Installation
JTRailsMeta is distributed as a gem, which is how it should be used in your app.
Include the gem in your Gemfile:
gem 'jt-rails-meta', '~> 1.0'
Create a `meta.yml` file for the translations:
rails g jt:meta
## Usage
### Basic usage
Include `JT::Rails::Meta` in your `ApplicationController`:
```ruby
class ApplicationController < ActionController::Base
include JT::Rails::Meta
...
end
```Call `meta_tags` in your layout:
```html
<%= meta_tags %>```
You have also access to `meta_title`, `meta_description`, `meta_keywords` methods.
Define your meta in `meta.yml` file:
```yaml
en:
meta:
# in general you use either prefx or suffix for the title of your page
# prefix or suffix are not applied on default title and are both optional
prefix: "My Website - "
suffix: " - My Website"# default meta used if no meta are found for a page
default:
title: My WebSite
description: My super website is about something magnificent
keywords: "website, some keywords"# Exemple of meta for the controller users and the action new
# title, full_title, description and keywords are all optional
users:
new:
title: Sign up
description: Description of sign up page
keywords: "sign up, registration"# Another example for the controller home and the action index
# full_title is used if exceptionally you don't want to use the prefix or suffix
# you can use either title or full_title
home:
index:
full_title: Home
description: Description of homepage```
### Pass parameters to tags
In your controller:
```ruby
class PostsController < ApplicationController
def show
@post = Post.find(params[:id])set_meta_title({ title: @post.title })
set_meta_description({ title: @post.title, author: @post.author })
add_meta_keywords(@post.tags.map(&:name))
end
end
```In your `meta.yml` file:
```yaml
en:
meta:
posts:
show:
title: "%{title}"
description: "Post about %{title} by %{author}"
```### Add more tags
You can add more tags with `add_meta_extra` and `add_meta_link` methods:
```ruby
add_meta_extra 'robots' => 'noindex,nofollow'
add_meta_extra {
twitter: {
site: '@mywebsite',
domain: 'mywebsite.com',
title: meta_title,
description: meta_description,
image: [
'http://mywebsite.com/image_1.jpg',
'http://mywebsite.com/image_2.jpg'
]
}
}add_meta_link 'author', 'https://github.com/jonathantribouharet'
add_meta_link 'publisher', 'https://github.com/jonathantribouharet'
```There is some methods already created using `add_meta_link` method:
- `add_meta_link_canonical` which is equivalent to `add_meta_link 'canonical'`
- `add_meta_link_author` which is equivalent to `add_meta_link 'author'`
- `add_meta_link_publisher` which is equivalent to `add_meta_link 'publisher'`
- `add_meta_link_alternate` which is equivalent to `add_meta_link 'alternate'`## Author
- [Jonathan Tribouharet](https://github.com/jonathantribouharet) ([@johntribouharet](https://twitter.com/johntribouharet))
## License
JTRailsMeta is released under the MIT license. See the LICENSE file for more info.