Skip to content
Refinery CMS engine to manage copywriting, application wide or per pages with i18n.
Find file
New pull request
Latest commit 2ae654f @bricesanchez bricesanchez Merge pull request #78 from unixcharles/eager-load
Use eager load and some improvements

Copywriting engine for Refinery CMS

Build Status

How do you manage your string in RefineryCMS?

Extended copywriting management: extract all your strings and leave no human word behind + i18n.

Do like this

<%= copywriting('phone number', { :scope => 'header', :default => '1-800-888-5555' }) %>

Or using block

<%= copywriting('slogan', { :scope => 'header' }) do %>
  Insert a slogan here
<% end %>

Just give it a name anyway

<%= copywriting('note1') %>

When it get more complex, avoid redundant options hash with options block

<% copywriting_options({ :scope => 'header', :phrase_type => 'wysiwyg' }) do %>
  <%= copywriting('contact information').html_safe do %>
  <% end %>
  <%= copywriting('phone number', { :phrase_type => 'string', :default => '1-800-888-5555' }) %>
<% end %>

Then edit the copywriting from the backend:


Okay, but now, what if you want to have a string that change on every page, like a slogan?

Pass the @page object in the options hash:

<%= copywriting('slogan', { :scope => 'header', :page => @page }) do %>
  Insert a slogan here
<% end %>



# Gemfile
gem 'refinerycms-copywriting'
rails generate refinery:copywriting
rake db:migrate

Pull request?


Helper method

copywriting('name', options) { ... optional block ... }

  :default => 'string...',        # if no block is given
  :page => @page,                 # the string will be scoped to the page, if no page_id option is provided
  :page_id => 1                   # using integer instead of page object
  :phrase_type => "wysiwyg"       # default is "text". Sets the type of field this is when editing. "string" gives you a single line text field. "text" gives you a multiline textarea. "wysiwyg" gives you the default Refinery visual editor.

copywriting_options(options) { ... use copywriting helper with default options hash ... }
Something went wrong with that request. Please try again.