Настройка страниц FAQ / Правил

Я не нашёл подробной документации по этому вопросу, поэтому решил сделать заметки о том, что удалось выяснить, и задать несколько вопросов. :slight_smile:

Руководства (Guidelines) и Частые вопросы (FAQ) — это две отдельные сущности, которые объединяются в конфигурации по умолчанию.

SiteSetting.faq_url = '' (по умолчанию):

image

FAQ:

  • маршруты: /faq, /guidelines, /rules, /conduct —> шаблон (или что-то подобное), заполняемый контентом из SiteSetting.guidelines_topic_id (тема FAQ/Guidelines в категории Staff)
  • соответствующие локализации (Администрирование > Настройка > Текст): I18n.t('js.faq'), I18n.t('js.sidebar.sections.community.links.faq.content') и т. д.
  • отображается в боковой панели

SiteSetting.faq_url = 'foo':

хотя указано, что это полный URL, похоже, что можно использовать относительный URL, например /t/25, что удобно.

image

Руководства:

  • маршруты: /guidelines, /rules, /conduct —> шаблон с использованием контента из SiteSetting.guidelines_topic_id
  • локализации: I18n.t('js.guidelines') и т. д.

FAQ:

  • маршруты: /faq —> SiteSetting.faq_url
    • к лучшему или к худшему, это прямая ссылка на этот URL. Она не извлекает контент и не помещает его в шаблон, как это делают Руководства. Это предназначено для возможности ссылки на внешний ресурс.
  • локализации: I18n.t('js.faq'), I18n.t('js.sidebar.sections.community.links.faq.content') и т. д.
  • отображается в боковой панели

Вопросы

Я решил использовать отдельный раздел FAQ и связал его с темой FAQ.

  1. Не могу понять, как установить заголовок темы просто как FAQ — не Faq или что-то подобное. Я пробовал SiteSetting.title_prettify и SiteSetting.min_topic_title_length. Ближайший результат — Faq (и в базе данных он хранится именно так). Я пробовал редактировать базу данных напрямую через SQL: update topics set title = 'FAQ' where id=25;, но это плохая идея, и в любом случае это не сработало. Обновлённое значение отображается в диалоге редактирования темы, но я не знаю, как принудительно обновить отображение. Перестроение HTML не помогло. Похоже, нужно делать это в Rails, но я не знаю как.
    • вот как это сделать (пожалуйста, скажите, если я ошибаюсь):
Topic.find(25).update(title: 'FAQ')
  1. Какой самый элегантный способ добавить Руководства в раздел «Сообщество» боковой панели для всех пользователей? Можно ли как-то использовать новую функцию настраиваемой боковой панели?

  2. Что такое I18n.t('guidelines_topic.title')? Используется ли это только при создании темы в начале работы с новой установкой?

Спасибо.

Существует документация с часто задаваемыми вопросами по адресу: