Категории документации Discourse

:discourse2: Краткое описание Discourse Doc Categories позволяет выделить определенные категории для документации, предоставляя им дополнительные возможности.
:hammer_and_wrench: Ссылка на репозиторий https://github.com/discourse/discourse-doc-categories
:open_book: Руководство по установке Как установить плагины в Discourse

:warning: Обратите внимание, что этот плагин находится в активной разработке и еще не полностью завершен.

Возможности

Плагин Discourse Doc Categories позволяет размещать структурированную документацию на существующем форуме Discourse. Он работает, выделяя определенные категории для документации и предоставляя функции, упрощающие поиск конкретных тем документации.

Вы можете увидеть его в действии в категории Documentation.

При маркировке категории как места для документации для этой категории включаются следующие функции:

  • Указанная тема, используемая в качестве оглавления для всех тем документации в категории
  • Новая боковая панель для навигации между различными темами в категории, включая встроенные функции фильтрации и поиска
  • Новые отчеты, помогающие поддерживать целостность тем оглавления

Кроме того, плагин обрабатывает перенаправления для сайтов, которые мигрируют с закрытого плагина Docs. Ссылки на документацию из этого плагина будут перенаправлять на их существующие URL-адреса тем, и есть настройка для перенаправления вашей предыдущей главной страницы документации на вашу основную категорию документации.

Настройка

Настройки конфигурации доступны по адресу example.discourse.com/admin/site_settings/category/doc_categories. Здесь вы найдете следующие настройки:

  • doc categories enabled: Выберите, чтобы включить плагин Doc Categories.
  • doc categories docs legacy enabled: Выберите это, если вы мигрировали с устаревшего плагина Docs.
  • doc categories homepage: При включении предыдущей настройки главная страница из устаревшего плагина Docs будет перенаправляться на этот URL.

Чтобы указать, какие категории будут использоваться для документации, назначьте им тему-оглавление. Для этого откройте настройки категории, нажав на значок :wrench: на странице категории. Затем нажмите ссылку «Настройки» и прокрутите вниз до раздела «Режим документации». Используйте поле «Тема-оглавление», чтобы указать тему, которая будет использоваться для оглавления категории.

Темы-оглавления

Темы-оглавления для категории документации служат двум целям:

  1. Это центральный список всех тем, включенных в категорию
  2. Боковая панель, включенная в этот плагин, заполняется содержимым темы-оглавления

Форматирование тем-оглавлений

Темы-оглавления могут содержать любой контент, который вы пожелаете. Чтобы боковая панель функционировала правильно, они должны включать маркированный список (или несколько маркированных списков) тем документации. Это могут быть просто URL-адреса тем в списке, в этом случае боковая панель покажет полные названия для каждой темы документации.

Если ваши названия длиннее нескольких слов, отображение полного названия в боковой панели может быть неудобным. Чтобы установить более короткие названия для конкретной темы, поместите сокращенное название перед URL-адресом, за которым следует двоеточие (:). Весь текст до двоеточия будет показан в боковой панели и будет вести на URL-адрес темы.

Вы можете разделить тему-оглавление на разделы и использовать несколько списков с заголовками (любого уровня) над каждым из них — они будут отображаться в боковой панели в этих разделах.

Вот пример темы-оглавления, чтобы начать:

Вы можете начать с краткого описания категории (необязательно).

## Первый раздел
* https://discourse.example.com/t/topic-title/12
* https://discourse.example.com/t/another-topic-title/34
* Короткое название: https://discourse.example.com/t/topic-with-a-long-title/56
* Еще одно название: https://discourse.example.com/t/another-topic-with-a-long-title/78

## Второй раздел
* Название темы: https://discourse.example.com/t/documentation-topic/98
* https://discourse.example.com/t/new-topic/76

Этот пример выведет боковую панель документации, которая будет выглядеть так:

:eyes: Смотрите тему-оглавление категории документации Documentation > Site Management в действии: https://meta.discourse.org/t/site-management-index/308032

Поддержание тем-оглавлений

Хотя темы-оглавления не будут обновляться автоматически при добавлении, удалении или редактировании контента в категории, плагин включает новые отчеты, которые показывают, где есть несоответствия в темах-оглавлениях.

  • Темы не в оглавлении:
    example.discourse.com/admin/reports/doc_categories_missing_topics
    Этот отчет показывает любые темы в категориях документации, которые не были добавлены в оглавление.

  • Лишние элементы:
    example.discourse.com/admin/reports/doc_categories_extraneous_items
    Этот отчет показывает элементы, включенные в оглавление, которые, похоже, там не должны быть. Отчет укажет причину, по которой тема была включена в отчет — например, если она была удалена или находится в другой категории, чем тема-оглавление, в которой она включена.

Дополнительная информация

Добавление строки in:docs к поисковому запросу позволит искать во всех категориях, помеченных для документации (т. е. тех, которым назначена тема-оглавление).

Максимальное количество элементов в оглавлении устанавливается настройкой сайта Max oneboxes per post, которая по умолчанию равна 50. Если вам нужно больше 50 элементов в оглавлении, увеличьте это значение в настройке.

38 лайков
New documentation plugin in development
Discourse vs Skool
Discourse Docs
How to create a sidebar similar to meta documentation sidebar?
Using Discourse as Learning Platform
Sub-sections on the sidebar without sub-categories
I am very interested in the 'documentation' feature
Using Discourse as an enterprise wiki library
How to arrange sub categories as list items under a category
Sub-sections on the sidebar without sub-categories
Custom topic ordering
Collections
Bulk Export of Raw Post Sources with Markup
Bulk Export of Raw Post Sources with Markup
Discourse Doc Categories is now available on Business
Discourse Docs
Discourse as an LMS / Discourse integration with an LMS
Topics (with replies) bumped on title edit
Theme customize - sidebar content
Questions about subcategories displaying in wiki sidebar
Doc pages - Schema Article
Structuring an active support community migrating from Facebook
Introducing simple mode for Discourse Doc Categories
Sidebar activation issues after recent Doc Categories update
How to add this header, colored categories, and sidebar categories?
What is the best way to Publish a book with chapters?
Sidebar spacing change?
Is there a plugin that allows you to organize all the URLs of a category into one topic?
Use more often placeholder forms in documentation topics?
Published Pages for documentation?
Need Help on Category on left sidebar
Displaying "full topic" text on category page + access to subcategory from menu bar
Custom Platform
Click a category to open a subcategory page
Discourse Doc Categories links not rendering
A better way to manage indices for Doc Categories?
A better way to manage indices for Doc Categories?
Create index topic

Это довольно приятно. Я как раз изучал другие решения для самохостинга документации (структура форума иногда может быть немного запутанной для новых читателей).

Удачи Discourse (по сравнению с Gitbook и другими :smiley:)

6 лайков

Я бы предположил, что компонент discourse-doc-sidebar (правильно ли я запомнил название?) больше не нужен?

3 лайка

Да — компонент, изначально созданный для новой боковой панели документации, был перенесён в этот плагин.

4 лайка

Похоже, это больше не работает с тегами? :slight_smile:

4 лайка

Мне нравится такой подход, так как он аккуратно интегрируется в основную навигацию по дискурсу, а не представляет собой совершенно новую систему, как в плагине Docs.
Мы с радостью готовы перейти на неё!

2 лайка

Просто добавляю это сюда, совсем не запрос на нативную функцию. Хотя эти функции могут быть не специально предназначены для этого плагина, я считаю, что они отличные для любой среды документации — как бонус, они могли бы стать отличным дополнением к ядру. :thinking:

5 лайков

Что-то вроде функции сносок, но с глобальной активацией по ключевым словам, было бы отличным дополнением к таким функциям.

3 лайка

Если у нас есть предпросмотр при наведении, который отображается на любой внутренней ссылке на вашем форуме, вам даже это не нужно. Замена слов/ссылок может справиться с этим: достаточно навести курсор на слово, чтобы прочитать полный пост, не открывая его :smiley:

Такие функции очень удобны (ведь никому не нравится читать документацию, верно?), а с выходом этого плагина, в разгар моего поиска лучшего решения для хостинга документации, мне стало гораздо сложнее :stuck_out_tongue: Я изучал возможность переноса моей документации в Quartz с управлением контентом в Obsidian.

2 лайка

Есть ли шанс, что это будет совместимо с 3.3 stable?

3 лайка

Да, это полностью совместимо с Discourse 3.3 :slight_smile:

2 лайка

Нет, это не так:

/var/www/discourse/plugins/discourse-doc-categories/lib/doc_categories/initializers/invalidate_cache_on_enabled_setting_change.rb:8:in `apply': undefined method `on_enabled_change' for an instance of Plugin::Instance (NoMethodError)

** НЕ СОВМЕСТИМЫЙ ПЛАГИН **

Вы не можете запустить Discourse из-за ошибок в плагине по адресу
/var/www/discourse/plugins/discourse-doc-categories

См. DEV: Add plugin API to perform actions when the plugin is turned on/o… · discourse/discourse@366dfec · GitHub

4 лайка

Отлично было бы, если бы эмодзи отображались в заголовках и элементах боковой панели!

3 лайка

Привет, ребята!

Извините, это была моя ошибка.

Когда Хью спросил меня, совместим ли плагин, я ошибочно предположил, что новые API, которые я добавил в ядро при его разработке, войдут в стабильную версию 3.3.

К сожалению, это оказалось не так, и первая стабильная версия, с которой плагин будет совместим, — 3.4.

Ещё раз извините за путаницу.

6 лайков

Как насчёт группового тега и тегов?

3 лайка

Спасибо за уточнение, @saquetim!

Не совсем понимаю, что вы имеете в виду — не могли бы вы немного прояснить?

В плагине Docs мы могли отображать теги группами в боковой панели для фильтрации.

Можно ли сделать то же самое с новым плагином?

2 лайка

Сейчас новый плагин не поддерживает эту функцию. Возможно, мы рассмотрим такую возможность в будущем, но на данный момент мы не планируем добавлять её в плагин.

2 лайка

Да, да, большое спасибо!

1 лайк

Должно быть, я совсем глупый, но, кажется, всё сделал правильно: назвал тему индексом для категории и указал плагин документации на эту тему, но боковая панель всё равно не появляется. Есть ли пошаговое руководство с скриншотами? Я в тупике, пытаясь настроить категорию документации. Спасибо!

1 лайк