meta-tags — гем для Ruby on Rails, делающий управление SEO-метатегами, разметкой Open Graph и Twitter Cards чистым и удобным.
Установка
Добавьте в Gemfile:
gem 'meta-tags'
Сгенерируйте инициализатор конфигурации:
rails generate meta_tags:install
Задание заголовков страниц
Используйте set_meta_tags в контроллерах или представлениях:
# Обычный заголовок
set_meta_tags title: 'Member Login'
# => <title>Member Login</title>
# Заголовок с префиксом сайта
set_meta_tags site: 'My SaaS', title: 'Dashboard'
# => <title>My SaaS | Dashboard</title>
# Обратный порядок с собственным разделителем
set_meta_tags(
site: 'My SaaS',
title: 'Dashboard',
reverse: true,
separator: '·'.html_safe
)
# => <title>Dashboard · My SaaS</title>
Настройка SEO и соцсетей
set_meta_tags(
site: 'My Store',
title: 'Organic Green Tea',
description: 'Pure, ceremonial-grade organic Japanese green tea.',
keywords: %w[green tea organic matcha],
canonical: 'https://example.com/products/green-tea',
icon: '/favicon.ico',
noindex: false,
nofollow: false,
og: {
title: 'Organic Green Tea',
type: 'website',
url: 'https://example.com/products/green-tea',
image: 'https://example.com/images/tea.jpg'
},
twitter: {
card: 'summary_large_image',
site: '@mystore',
title: 'Organic Green Tea'
}
)
Хелперы представлений (View Helpers)
Вывод в макете (Layout)
В файле app/views/layouts/application.html.erb:
<head>
<%= display_meta_tags site: 'Default Site Title' %>
</head>
Задание напрямую внутри шаблона представления
<% title 'Account Settings' %>
<% description 'Manage your billing and notification preferences.' %>
<h1><%= current_title %></h1>