Ruby on rails学习:为网站添加 sitemap

sitemap对于网站的seo是有好处的
更新于: 2021-12-31 12:27:57

Gemfile 中添加,并安装

# 添加
gem "sitemap_generator"
# 安装
bundle install

添加 config/sitemap.rb 配置文件

# Set the host name for URL creation
SitemapGenerator::Sitemap.default_host = "https://js.work"

SitemapGenerator::Sitemap.create do
  add "/", :changefreq => "daily", :priority => 0.9

  Post.all.each do |item|
    add "/posts/#{item.slug}", :lastmod => item.updated_at, priority: 0.8, changefreq: "weekly"
  end
end

测试一下任务

# 直接运行
ruby config/sitemap.rb
# 或者
rake sitemap:create

添加定时任务 config/schedule.rb

# create sitemap.xml.gz
every 3.days do
  command "RAILS_ENV=production docker exec -t fsm-rails_app_1 rake sitemap:refresh"
end

其它配置

# 在 .gitignore 中添加 ignore sitemap.gz
public/sitemap.xml.gz

 

参考

https://github.com/kjvarga/sitemap_generator