Skip to content
Enables locale-based translations of all user-facing product data using Globalize3
Find file
#2 Compare This branch is 28 commits ahead of mrs:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Spree Product Translations

Makes product details, properties, prototypes, taxonomies and option types translatable by bridging the Globalize3 gem.

Installation and configuration

In your Gemfile, add:

gem 'spree_product_translations'

Then install the gem:

bundle install

Then copy the migrations to your spree application:

rake spree_product_translations:install

Finally migrate your database:

rake db:migrate

If you have pre-existing data, you'll need to run this rake task:

rake spree:extensions:product_translations:globalize_legacy_data

it will copy the original data over to the new translation tables. Globalize3 doesn't default to the original model table for the default locale like v1 used to.

How to use it

To edit the content in a specific language, simply change the locale on the language nav, and edit on the admin as usual.

Translated fields


  • name
  • description
  • meta_description
  • meta_keywords


  • presentation


  • name


  • name


  • name
  • description


  • presentation


  • presentation

Fallbacks for empty translations

If you have translations in your database (by using the spree-simple_product_translations extension for example) with empty translations (being a blank string instead of nil) you might want to add this configuration option to an initializer in your app:

Spree::Config.set :fallbacks_for_empty_translations => true

It will then use fallbacks for empty strings too.

Running tests

The tests are not updated since the original fork of the spree 0.11 compatible version. They will pretty sure fail. Feel free to fork the project and create a pull request with tests.

Test information by oliverbarnes

You might need to comment out the rspec gem requirement under config/environments/test.rb - for some reason, even with both the rspec gem and plugin installed, I would keep getting an annoying missing gem error.

Spree is officially making a choice for Test::Unit anyway, so this shouldn't create a problem.

(not that I don't like Rspec, I actually prefer it in other projects.)

Feature requests and patches welcome

If you see anything you need missing, or if you have a useful patch, feel free to submit them on the Issues section of the github project.

Something went wrong with that request. Please try again.