Skip to content

magma-labs/solidus_dynamic_sitemaps

Repository files navigation

Solidus Dynamic Sitemaps

CircleCI

Solidus Dynamic Sitemaps is a sitemap generator based on the sitemap_generator gem. It adheres to the Sitemap 0.9 protocol specification. This is a continuation of the original Spree version, updated to work with the Solidus eCommerce platform.

Features

  • Notifies search engine of new sitemaps (Google, Yahoo, Ask, Bing)
  • Supports large huge product catalogs
  • Adheres to 0.9 Sitemap protocol specification
  • Compresses sitemaps with gzip
  • Provides basic sitemap of a Solidus site (products, taxons, login page, signup page)
  • Easily add additional sitemaps for pages you add to your solidus site
  • Supports Amazon S3 and other hosting services
  • Thin wrapper over battle tested sitemap generator
  • Add /sitemap route to display the sitemap

Configuration Options

Check out the README for the sitemap_generator.


Installation

  1. Add the gem to your Solidus store's Gemfile:

    gem 'solidus_dynamic_sitemaps', github: 'magma-labs/solidus_dynamic_sitemaps'
  2. Update your bundle:

    $ bundle install
    
  3. Run the installer, it will create a config/sitemap.rb file with some sane defaults

    $ rails g solidus_dynamic_sitemaps:install
    
  4. Add the sitemap to your .gitignore, since it will be regenerated server-side.

    $ echo "public/sitemap*" >> .gitignore
    
  5. Set up a cron job to regenrate your sitemap via the rake sitemap:refresh task. If you use the Whenever gem, add this to your config/schedule.rb:

    every 1.day, at: '5:00 am' do
      rake '-s sitemap:refresh'
    end
  6. Ensure crawlers can find the sitemap, by adding the following line to your public/robots.txt with your correct domain name

    $ echo "Sitemap: http://www.example.com/sitemap.xml.gz" >> public/robots.txt
    
  7. Add link to sitemap to a view[Optional] <%= link_to 'Sitemap', '/sitemap' %>


Acknowledgements


Upgrading

If you upgrade from early versions of solidus_dynamic_sitemaps you need to change your sitemaps from:

SitemapGenerator::Sitemap.add_links do
  # ...
end

to this:

SitemapGenerator::Sitemap.create do
  # ...
end

Contributing

See corresponding guidelines


Copyright (c) 2017 Magmalabs

Copyright (c) 2011-2015 Jeff Dutil and other contributors, released under the New BSD License.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published