パンくずリスト

パンくずリスト

パンくずリストは、以下のようなもの
Image from Gyazo

パンくずリストを作成するメリット
・ユーザーが今どのページにいるのか分かるようにするため
クローラーの巡回を手助けする事でSEO対策になる

クローラー: インターネット上に存在するWEBサイトや画像などの情報を取得し、自動的に検索データベースを作成する巡回プログラム

パンくずリストの導入手順

パンくずリストを表示するには、[gretel]Gemを使う

Gemfileに以下のように記述する

gem "gretel"


$ bundle install


以下コマンドでパンくずリストの設定ファイル([config/breadcrumbs.rb])を作成する
$ $ rails generate gretel:install


[config/breadcrumbs.rb]に下記のようにパンくずリストの設定を記述する

[config/breadcrumbs.rb]

crumb :edit_admin_site do  #  ここには、パンくずの名前を記述
  link '設定', edit_admin_site_path   # [link "ビューに表示される名前", "リンクのURL"]を記述
  parent :admin_dashboard   #  親のパンくずの名前を記述
end

crumb :admin_users do
  link 'ユーザー', admin_users_path
  parent :admin_dashboard
end

crumb :admin_user do |user|  #  リンクのURLにインスタンスを渡さなければいけない時は、このように記述
  link 'プロフィール', admin_user_path(user)
  parent :admin_users
end

crumb :new_admin_user do
  link 'ユーザーの作成', new_admin_user_path
  parent :admin_users
end

crumb :admin_invitations do
  link '招待', admin_invitations_path
  parent :admin_dashboard
end

crumb :new_admin_invitation do
  link '招待状の作成', new_admin_invitation_path
  parent :admin_invitations
end

crumb :admin_categories do
  link 'カテゴリー', admin_categories_path
  parent :admin_dashboard
end

crumb :edit_admin_category do |category|
  link 'カテゴリー編集', edit_admin_category_path(category)
  parent :admin_categories
end

crumb :admin_authors do
  link '著者', admin_authors_path
  parent :admin_dashboard
end

crumb :edit_admin_author do |author|
  link '著者編集', edit_admin_author_path(author)
  parent :admin_authors
end

crumb :admin_articles do
  link '記事', admin_articles_path
  parent :admin_dashboard
end

crumb :new_admin_article do
  link '記事作成', new_admin_article_path
  parent :admin_articles
end

crumb :edit_admin_article do |article|
  link '記事編集', edit_admin_article_path(article.uuid)
  parent :admin_articles
end

crumb :admin_tags do
  link "タグ", admin_tags_path
  parent :admin_dashboard
end

crumb :edit_admin_tag do |tag|
  link "タグ編集", edit_admin_tag_path(tag)
  parent :admin_tags
end


パンくずリストを表示したいビューの部分に以下のように記述

<% breadcrumb パンくずの名前 %>

設定したパンくずリストにリンクでURLにインスタンスを渡さなければいけない時は、以下のように記述する

<% breadcrumb パンくずの名前, 渡すインスタンス %>

参考記事:

クローラーとは?SEOに必要な基礎知識とクローリングを最適化する方法 :: 株式会社イノーバ

【Rails】 gretelを使ってパンくずリストを作成しよう | Pikawaka - ピカ1わかりやすいプログラミング用語サイト