Создание перевода темы для Custom Header Links

Привет, друг! Я хочу создать переводы тем для этого компонента.

Я прочитал статью о поддержке нескольких языков по адресу Add settings to your Discourse theme

и обнаружил, что тема GitHub - discourse/DiscoTOC: A Discourse theme component that generates a table of contents for topics with one click · GitHub поддерживает функции перевода тем.

Однако я не знаю, с чего начать создание переводов для этого компонента темы.

Не могли бы вы дать мне рекомендации?

Я пытаюсь изменить это, используя тему Дэвида Тейлора

 I18n.t(themePrefix("my_translation_key"))

в Add localizable strings to themes and theme components

<script type="text/discourse-plugin" version="0.8.20">
  // Добавить атрибут к тегу <html>. Это может помочь пользователю стилизовать
  // ссылки в его заголовке
  $('html').attr('dhp-locale', I18n.locale)

  const customHeaderLinks = I18n.t(themePrefix("header_nav_link"));
  if (!customHeaderLinks.length) return;

  const h = require("virtual-dom").h;
  const headerLinks = [];

  const mobileView = api.container.lookup("site:main").mobileView;

и добавить locales/en.yml

но получаю результат [en.theme_translations.87.header_nav_link]


…значит, я что-то делаю не так?

Нет, вы ничего не делаете неправильно. Этот компонент пока не поддерживает переводы тем, но я планирую это добавить.

Вы пытаетесь перевести текст для каждой ссылки, чтобы он отображался в зависимости от предпочтений языка пользователя?

Да, Йохани, я использую этот компонент как меню. Как вы и сказали, я хочу перевести текст для каждой ссылки. Это в вашем списке, я очень рад, что вы сможете это сделать. :лицо_с_тремя_сердечками: :лицо_с_тремя_сердечками: :лицо_с_тремя_сердечками:

ха-ха, у меня есть идея: я могу использовать этот компонент для создания двуязычного сайта. Я создам некоторые категории на китайском и некоторые на английском, а этот компонент использую в качестве основного меню. Ссылки заголовков будут включены в файлы локализаций en.yml и zh_CN.yml. Для главной страницы и страниц категорий я могу использовать переведённый компонент темы (даже если это статическая страница). Также я скрою выпадающее меню категорий по умолчанию. По моему мнению, для нашего сайта достаточно всего двух языков.

ха-ха, понял, просто перемести содержимое header.html в head_tag.html

получи это, перечитав эту тему:

https://meta.discourse.org/t/how-to-add-settings-to-your-discourse-theme/82557/14?u=aksoforever

спасибо, Johani, и ты, Джо. :blush: :blush: :blush: :blush: