サイトをRailsベースのRefineryCMSに変換し、i18n製油所のcms gemをセットアップし、ページの多言語バージョンを作成しました。ユーザーがフラグをクリックして、表示されている特定のページのさまざまな言語を切り替えることができるように、ページにロケールスイッチャーを作成したいと思います。
ページで使用可能な言語とそれぞれのリンクを取得するにはどうすればよいですか?
サイトをRailsベースのRefineryCMSに変換し、i18n製油所のcms gemをセットアップし、ページの多言語バージョンを作成しました。ユーザーがフラグをクリックして、表示されている特定のページのさまざまな言語を切り替えることができるように、ページにロケールスイッチャーを作成したいと思います。
ページで使用可能な言語とそれぞれのリンクを取得するにはどうすればよいですか?
# In a controller
::I18n.locale = params[:locale]
<!-- In a view with a dropdown -->
<ul id="menu1" class="dropdown-menu" role="menu" aria-labelledby="drop4">
<% Refinery::I18n.frontend_locales.each do |frontend_locale| %>
<li>
<%= link_to Refinery::I18n.locales[frontend_locale], refinery.url_for(:locale => frontend_locale) %>
</li>
<% end %>
</ul>
<ul id="laguages">
<%
@page.translations.each do |t|
%>
<li>
<%= link_to "#{@page.translations.find_by_locale(t.locale).title} (#{Refinery::I18n.locales[t.locale]} #{image_tag("/assets/refinery/icons/flags/#{t.locale}.png")})".html_safe, refinery.url_for(:locale => t.locale) %>
</li>
<%
end
%>
</ul>