2016年1月20日水曜日

rails4.2 site_map.xmlを作成する

  • 公開日:2016年01月20日

環境


  • rails 4.2.4
  • ruby 2.2.2
  • vagrant centos6.5

はじめに


railsアプリにsite_map.xmlを導入したので、やり方を記事にしました。

site_map.xmlとは


ページのURLリストをもとにサイトの構造を記述したxml形式のファイルです。
作成したサイトが運用フェーズになったら、必ず導入しておきたいSEO対策の技術の一つです。
site_map.xmlの一番の効果は、検索エンジンの通常のクロール処理では検出できないページを知らせることができることです。

site_map.xml作成方法


railsでsite_map.xmlを作成する場合は、sitemap-generatorを利用すると良いと思います。

{project_folder}/Gemfile

gem 'sitemap_generator'

Gemfile記述後に、インストールします。

terminal

// create directory
cd {project_folder}

rbenv exec bundle install

Installing sitemap_generator 5.1.0
Using spring 1.3.4
Using spring-commands-rspec 1.0.4
Using therubyracer 0.12.2
Using uglifier 2.7.1
Using unicorn 4.9.0
Bundle complete! 27 Gemfile dependencies, 112 gems now installed.

インストール終了後にconfig/sitemap.rbを作成します。

config/sitemap.rb作成


terminal

cd {project_folder}

rbenv exec rake sitemap:install
created: config/sitemap.rb

sitemap.rbの記述


sitemap.rbに必要な項目を記載していきます。hostの設定はかならず行います。

{project_folder}/config/sitemap.rb

SitemapGenerator::Sitemap.default_host = "http://test.com/"

記述が完了したらsitemapを作成します。

terminal

rbenv exec rake sitemap:refresh:no_ping
In '/vagrant_data/{project_folder}/public/':
+ sitemap.xml.gz                                           1 links /  338 Bytes
Sitemap stats: 1 links / 1 sitemaps / 0m00s

{project_folder}/public/にsitemap.xml.gzというファイルが作成されます。
解凍すればsitemap.xmlの中を確認することができます。
また、sitemap.rbではrailsのroutesの設定と同じような記述方法でsite_map.xmlを作成していくことが可能です。

まず最初の例として、引数を設定する必要がないpathを記述してみます。

{project_folder}/config/sitemap.rb

  add samples_path, :priority => 0.7, :changefreq => 'daily'

引数を設定する必要があるpath(showとか)は、以下のように記述します。

{project_folder}/config/sitemap.rb

  Sample.find_each do |sample|
    add sample_path(:id => play.sample)
  end

上記のように必要なroutesの設定をしていくことで巨大なsitemap.xmlを作成できます。
サイトの規模が大きくなればなるほど便利さを実感できると思います。

まとめ


サイトの規模が大きくなればなるほどSitemapGeneratorのありがたみを実感できるはずです。 たとえ何千ページでも簡単にsite_map.xmlを作成できるので、是非試してみてください。

Capistranoを使って自動化しておくとより便利です。
Capistranoを使った自動化の方法は、またの機会に説明したいと思います。

以上です

Rails4の開発にオススメの本


Rubyの応用力をつけるのにオススメの本


運営サイト(railsで作成しています)


参考サイト


この記事がお役にたちましたらシェアをお願いします

このエントリーをはてなブックマークに追加

0 件のコメント:

コメントを投稿

Related Posts Plugin for WordPress, Blogger...