The commit updates the sitemap host to point to the production environment. This is needed so that the sitemap links will point to the correct domain, and the production environment needs to point to a specific host. The sitemap now uses the correct host url, and this is the correct config for the current state.
59 lines
2.0 KiB
Ruby
59 lines
2.0 KiB
Ruby
# Set the host name for URL creation
|
|
host = Rails.env.production? ? "https://todayaiweather.com" : "http://127.0.0.1:3000"
|
|
Rails.application.routes.default_url_options[:host] = host
|
|
SitemapGenerator::Sitemap.adapter = SitemapGenerator::AwsSdkAdapter.new(
|
|
Rails.application.credentials.dig(:aws, :bucket),
|
|
aws_access_key_id: Rails.application.credentials.dig(:aws, :access_key_id),
|
|
aws_secret_access_key: Rails.application.credentials.dig(:aws, :secret_access_key),
|
|
aws_region: Rails.application.credentials.dig(:aws, :region)
|
|
)
|
|
SitemapGenerator::Sitemap.sitemaps_path = "sitemaps/"
|
|
|
|
SitemapGenerator::Sitemap.default_host = "https://pub.r2.todayaiweather.com"
|
|
|
|
SitemapGenerator::Sitemap.create do
|
|
add root_path, changefreq: "daily", priority: 1.0
|
|
add cities_path, changefreq: "daily", priority: 0.9
|
|
add arts_path, changefreq: "daily", priority: 0.9
|
|
|
|
City.find_each do |city|
|
|
add city_path(city),
|
|
changefreq: "daily",
|
|
priority: 0.8,
|
|
lastmod: city.updated_at
|
|
end
|
|
|
|
WeatherArt.includes(:city).find_each do |art|
|
|
add city_weather_art_path(art.city, art),
|
|
changefreq: "daily",
|
|
priority: 0.7,
|
|
lastmod: art.updated_at,
|
|
images: [ {
|
|
loc: url_for(art.image),
|
|
title: "#{art.city.name} Weather Art - #{art.weather_date.strftime('%B %d, %Y')}"
|
|
} ] if art.image.attached?
|
|
end
|
|
# Put links creation logic here.
|
|
#
|
|
# The root path '/' and sitemap index file are added automatically for you.
|
|
# Links are added to the Sitemap in the order they are specified.
|
|
#
|
|
# Usage: add(path, options={})
|
|
# (default options are used if you don't specify)
|
|
#
|
|
# Defaults: :priority => 0.5, :changefreq => 'weekly',
|
|
# :lastmod => Time.now, :host => default_host
|
|
#
|
|
# Examples:
|
|
#
|
|
# Add '/articles'
|
|
#
|
|
# add articles_path, :priority => 0.7, :changefreq => 'daily'
|
|
#
|
|
# Add all articles:
|
|
#
|
|
# Article.find_each do |article|
|
|
# add article_path(article), :lastmod => article.updated_at
|
|
# end
|
|
end
|