Я создаю многоязычную целевую страницу с посредником.Я пытаюсь использовать i18n.Вместо создания другого html-файла (т. Е. Landing.en.html.erb, landing.cn.html.erb) я хочу использовать только одну страницу, а затем ссылку на файл yml.
Там будет кнопкана панели навигации, чтобы переключиться на другой язык.
Я провел весь день, читая документ посредника (https://middlemanapp.com/advanced/localization/) и пытаясь найти некоторые примеры, но он все еще не работает.
Это мой код, относящийся к i18n:
config.rb
activate :i18n, path: "/:locale/", mount_at_root: :en
source / shared / _navbar.html.erb
<!-- change language -->
<ul class="">
<% if (I18n.locale == :cn_t) %>
<li><a href="<%= current_page.url.gsub("cn_t", "en") %>" class="navbar-wagon-item navbar-wagon-link">English</a></li>
<% else %>
<li><a href="<%= current_page.url.concat("cn_t") %>" class="navbar-wagon-item navbar-wagon-link">繁中</a></li>
<% end %>
</ul>
source / layout/layout.erb
<head>
<% if (I18n.locale == :cn_t) %>
<link rel="alternate" hreflang="en" href="<%= current_page.url.gsub("cn_t", "en") %>" />
<% else %>
<link rel="alternate" hreflang="cn_t" href="<%= current_page.url.gsub("en", "cn_t") %>" />
<% end %>
</head>
source / localizable / index.html.erb
<h1><%= t(:greeting) %></h1>
locales / cn_t.yml
---
en_t:
greeting: "嗨"
locales / en.yml
---
en:
greeting: 'Hello'
Пожалуйста, помогите мне проверить это. Это мой первый вопрос, задающий вопрос здесь. Пожалуйста, не стесняйтесь давать мне любые предложения, если я что-то пропущу. Спасибо!