Extention to manage the static pages for your spree shop
Pull request Compare This branch is 5 commits ahead, 285 commits behind spree-contrib:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Static Content

Good, clean content management of pages for Spree. You can use this to:

  • Add and manage static pages such as an 'About' page.

  • Show a static page instead of existing dynamic pages such as the home page, products pages, and taxon pages.

To override a dynamic page, use the path of that dynamic page as the slug when you create your page in the Spree Administration area, including the leading slash. For example:

  • to override the home page, use a path of '/' (without quotes).

  • to override a product page, use its path, e.g. '/products/apache-baseball-jersey' (without quotes).

The dynamic page can be made available again if you delete the static page or change its slug.

Create your own copy of the app/views/content/show.html.erb template in your site extension to change the layout of the static pages.

Example to use the static pages inside a menu

  <% for page in Page.header_links do %>
    <li><%= link_to page.title, page.link %></li>
  <% end %>


  1. Add `gem “spree_static_content”` and `gem “spree_editor”, :git => “git://github.com/romul/spree_editor.git”` to your Gemfile

  2. Run `bundle install`

  3. Run `rails g spree_static_content:install`

  4. Run `rake db:migrate`

  5. Run `rake spree_editor:install`


There's a good chance that you've got Spree running in a particular locale, like en-GB. This extension does not provide specific locale support for English as it is just duplicated across regions (GB, AU, CA, etc). Therefore you should set i18n fallbacks to true in your application.rb file to pick up the default en locale:

config.i18n.default_locale = 'en-GB'
config.i18n.fallbacks = true