## RefineryCMS-Translation ##

A simple approach to content translation for [RefineryCMS](refinerycms.org).

Features:

  • Mark string or block as translatable in you view, key-value * locale.

  • Let the end-user translate from Refinery backend

  • On the first request that need translation, locale for every language is created

  • You can define translated string to be edited with text_field or WYMeditor in the backend.

  • Translation are cached

  • When the content change, the translation is marked as out-dated to ease site maintenance.

### Install ###

Install the plugin

Add this line to your Gemfile: > gem ‘refinerycms-translations’, :git => ‘[email protected]:seasonlabs/refinerycms-translations.git’

Install the gem > bundle install

Copy the migration file > rails generate refinerycms_pepes

Run the migration

> rake db:migrate

Make sure you have correctly set the following setting in Refinery: ‘i18n_frontend_translation_locales’, ‘i18n_translation_default_frontend_locale’

### Usage ###

Given the following code in you view:

> <h1><%= RefinerySetting.site_name %></h1>

You can do:

> <h1><%= Translation.for_string(‘site name’, RefinerySetting.site_name) %></h1>

Or for more complex text:

> <div id=‘footer’> > <p>Please give us a call! 1-877-555-1234</p> > <p>Copyright 2010 - Your Company Name</p> > </div>

Using a block:

> <div id=‘footer’> > <% Translate.for_block(‘footer’) do %> > <p>Please give us a call! 1-877-555-1234</p> > <p>Copyright 2010 - Your Company Name</p> > <% end %> > </div>

Note: for_string and for_block both take the option “wym” argument to edit the translation with the WYM editor. for_block default to true, for_string default to false.

Based on code from github.com/unixcharles