サイドバーでは、Discourse サイトの重要なセクションへの素早いアクセスを提供します。ユーザーは自分の好みに合わせてサイドバーをカスタマイズできますが、 thoughtful なデフォルト設定を提供することで、特に新規ユーザーやフォラムの訪問者がナビゲーションしやすくなります。
このガイドでは、既存のセクションのカスタマイズ方法と、サイドバーに新しいセクションを追加する方法について説明します。また、サイドバーに関連するユーザー設定のデフォルトを構成するために調整できる設定についても学びます。
各セクションのデフォルトコンテンツのカスタマイズ
コミュニティセクション
サイドバーの最上部セクション(見出しが表示されないもの)は「コミュニティ」セクションと呼ばれます。このセクションはすべてのユーザーに表示され、必要なナビゲーションリンクを含みます。
このセクションをカスタマイズするには:
- サイドバーの「その他」をクリック
- 拡張メニューの下部にある「このセクションをカスタマイズ」を選択
以下の変更を行うことができます:
- アイコンをドラッグしてリンクの順序を変更
- 各エントリのアイコン、名前、リンクを編集
- セクションに新しいエントリを追加
デフォルトリンクの理解
一部のデフォルトリンクには特別な動作があります:
- 私の投稿 - このリンクはデフォルトで「私の投稿」として常に表示されます。ただし:
- ユーザーに1つ以上の下書きがある場合、リンクをクリックすると投稿履歴ではなく下書きに移動します。
- ユーザーが
experimental_new_new_groupsサイト設定で選択されたグループに属している場合、下書きが存在するとリンクテキストも「私の下書き」に変わります。
- 私のメッセージ -
personal_message_enabled_groupsに属するユーザーにのみ表示されます。- 個人の受信トレイと所属しているグループの受信トレイの未読インジケーターまたは未読メッセージ数を表示します。
- 未読メッセージがグループの受信トレイにしかない場合でも、常に個人の受信トレイに移動します。
- レビュー - スタッフとカテゴリモデレーターにのみ表示されます。
- 管理 - 管理者とモデレーターにのみ表示されます。
- 招待 - 他の人を招待できるユーザーにのみ表示されます。
翻訳の扱い
デフォルトリンクは自動的にユーザーが選択したインターフェース言語で表示されます。ただし:
- デフォルトリンクのテキストをカスタマイズすると、すべての言語で上書きされます
- 「私の下書き」などの特定の言語や非表示要素のテキストを編集するには、Discourse でのテキストのカスタマイズに関するガイドの手順に従ってください。
プラグインで追加されたリンクの扱い
プラグインで追加されたリンクは、現在サイドバーエディターを通じてカスタマイズできません。ただし、以下のアプローチを使用して独自のバージョンに置き換えることができます:
- 元のプラグイン追加リンクを非表示にする
- 希望する動作と外観を持つカスタムリンクを追加
一部のリンクはプラグインの設定で非表示にできます。例えば、今後のイベントリンクは sidebar_show_upcoming_events 設定を無効にすることで非表示にできます。
そのような設定がない場合は、カスタム CSS を使用してリンクを非表示にできます。
プラグインリンクを非表示にするか移動させる CSS の例
プラグインで追加されたリンクを完全に非表示にする
この例では、ActivityPub プラグインで追加されたリンクを非表示にします:
.sidebar-section-link-wrapper[data-list-item-name="activity-pub-about"] {
display: none;
}
「その他」メニューからのみリンクを非表示にする
リンクを「その他」メニューから常に表示されるように移動させる場合に便利です:
.sidebar-more-section-content
.sidebar-section-link-wrapper.dropdown-menu__item[data-list-item-name="anniversaries"] {
display: none;
}
メインセクションからのみリンクを非表示にする(「その他」メニューには表示)
リンクを「その他」メニューに表示させ、常に表示させたくない場合に便利です:
.sidebar-section.sidebar-section-wrapper:not(.sidebar-more-section-content)
.sidebar-section-link-wrapper[data-list-item-name="docs"] {
display: none;
}
サイトへの CSS 変更の詳細については、CSS 変更に関するガイドを参照してください。
カテゴリセクション
ユーザーのサイドバーにデフォルトで表示されるカテゴリは、default_navigation_menu_categories サイト設定で構成できます。以下の方法で設定にアクセスできます:
- カテゴリセクションの下部にある「デフォルトを構成」をクリック(デフォルトが設定されていない場合にのみ表示)
- 管理 > すべてのサイト設定 からこの設定にアクセスし、検索
カテゴリの表示はユーザーの権限を尊重します。制限付きカテゴリをデフォルトに含めても、ユーザーはアクセス権限のあるカテゴリのみをサイドバーに表示します。制限付きカテゴリのみをデフォルトとして設定した場合:
- 訪問者は空のリストを表示します
- ログインユーザーは最も人気のあるカテゴリを表示します(すべてのカテゴリの選択を解除した場合と同じ)
「カテゴリ」の隣の メニューにある「サイドバーカテゴリを編集」オプションは、すべてのユーザーのデフォルトではなく、個人ビューのみをカスタマイズします。
タグセクション
ユーザーのサイドバーにデフォルトで表示されるタグは、default_navigation_menu_tags サイト設定で構成できます。以下の方法で設定にアクセスできます:
- タグセクションの下部にある「デフォルトを構成」をクリック(デフォルトが設定されていない場合にのみ表示)
- 管理 > すべてのサイト設定 からこの設定にアクセスし、検索
タグの表示はユーザーの権限を尊重します。非表示のタググループ内のタグは、デフォルトに含まれていてもユーザーのサイドバーに表示されません。制限付きタグのみをデフォルトとして設定した場合:
- すべてのユーザー(訪問者を含む)は最も人気のあるタグを表示します(すべてのタグの選択を解除した場合と同じ)
「タグ」の隣の鉛筆アイコンは、すべてのユーザーのデフォルトではなく、個人ビューのみをカスタマイズします。
チャットセクション
すべてのチャットセクションは、チャットが有効[1] であり、ユーザーがチャットを使用する権限[2] があり、設定でチャットを無効にしていない場合にのみ利用可能です。
チャット検索セクション
チャット検索は chat_search_enabled サイト設定で制御されます。
スレッドセクション
スレッドセクションは、スレッド機能が有効な少なくとも1つのチャットに所属しているユーザーにのみ表示されます。
チャンネルセクション
チャンネルセクションには、ユーザーが参加しているチャットチャンネルが表示されます。カテゴリ権限に基づいて少なくとも1つのチャンネルに参加できる場合、ユーザーはこのセクションを表示します。少なくとも1つのチャンネルに参加するまで、セクションは空になります。
チャンネル設定を通じてチャンネルメンバーシップを自動化できます:
- チャンネル設定で自動メンバー追加を有効にする
- 条件を満たす新規ユーザーは自動的にサイドバーにチャンネルを表示
DM セクション
ダイレクトメッセージセクションには、1対1およびグループチャット会話が 표시됩니다。このセクションを表示するには、ユーザーが direct_message_enabled_groups のいずれかに所属している必要があります。
このセクションのデフォルト会話を構成することはできません。ただし、空のセクションの代わりに「新しい DM を開始」ボタンが表示されます。
カスタムセクションの追加
カスタムリンクを含む追加のセクションをサイドバーに作成できます。これらは最初のセクションの下、カテゴリセクションの上に表示されます。新しいセクションを追加するには:
- サイドバー下部の + ボタンをクリック
- セクションのタイトルを入力
- 追加する各リンクについて:
- アイコンを選択
- リンクの名前を入力
- 目的地の URL を指定
- 「別のリンクを追加」をクリックしてさらにリンクを追加
- 「全員に表示」をチェックして、すべてのユーザーにこのセクションを表示
- 「保存」をクリックしてセクションを作成
カスタムセクションの見出しの隣にある小さな アイコンは管理者にのみ表示され、このセクションが全員に表示されることを示します。
テキストラベルのカスタマイズ
セクションの見出しを含む、サイドバーのすべてのテキストラベルをカスタマイズできます:
- 管理 > 外観 > サイトテキスト に移動
- カスタマイズしたいテキストを検索
多くのサイドバーラベルは一般的な単語を使用しているため、特定のテキストキーを見つけるのが難しい場合があります。これを支援するために:
- 詳細なローカライズ機能を使用して、正しいテキストキーを特定
ユーザー設定のデフォルトのカスタマイズ
ユーザーは /my/preferences/navigation-menu でサイドバー設定をカスタマイズできます。以下のサイト設定を使用して、これらの設定のデフォルトを設定できます:
default_sidebar_link_to_filtered_list
この設定は、サイドバーのトピックリスト(「すべてのトピック」やカテゴリ・タグセクションのリンクを含む)が以下のように動作するかどうかを制御します:
- 有効の場合:未読または新しいトピックのみを表示するようにフィルタリングされたリスト
- 無効の場合:すべてのトピックを含むリスト
default_sidebar_show_count_of_new_items
この設定は、新しいアイテムがサイドバーでどのように表示されるかを制御します:
| ドット/バッジ | カウント |
|---|---|
|  |
chat_separate_sidebar_mode
有効にすると、ナビゲーションメニューにチャットまたはフォーラムボタンが追加されます。これにより、ユーザーは全画面チャット体験とフォーラムビューの間をより効率的に切り替えることができます。全画面チャットモードでは、サイドバーにはチャット関連のセクション(「私のスレッド」、「チャンネル」、「DM」など)のみが表示されます。「常に」に設定されている場合、フォーラムを閲覧中にサイドバーのチャット関連セクションは非表示になります。この設定により、フォーラムとチャットの体験を明確に分離できます。
default_sidebar_switch_panel_position というサイト設定があり、トグルボタンの表示位置をサイドバーの上部または下部に決定できます。ユーザーは設定で位置を変更できません。
さらなるカスタマイズ
テーマコンポーネントを使用して、フォラムのサイドバーをさらに強化できます。利用可能なオプションを確認するには、#theme-component::カテゴリ カテゴリで #sidebar::タグ が付けられたトピックを検索してください(リンク)。ただし、すべてのコンポーネントに Meta にトピックがあるわけではありません。他のトピックにリンクされているものもあります。
テーマコンポーネントはサイドバーに機能を追加できます。いくつかの例を挙げます:
- サイドバーのデフォルト表示を変更:
- デフォルトでサイドバーを閉じる:GitHub - VaperinaDEV/closed-sidebar-by-default
- デフォルトでセクションを折りたたむ:GitHub - Arkshine/discourse-collapsed-sidebar- sections-by-default
- サイドバーアイコンを変更し、動的にする:Discourse Dynamic Sidebar Icon
- サイドバーセクションの順序を変更:
- 追加のサイドバーセクション:
- 選択されたグループにのみ表示されるカスタムセクション:Discourse Group Sidebar Menus
- グループ受信トレイへの直接リンクを表示する個人メッセージ用のセクション:サイドバー用のメッセージセクション
- 訪問者やスタッフなど、異なるユーザーグループに対して特定のセクションを表示または非表示にするコンポーネント:
- サブカテゴリをインデントするコンポーネント:
高度な機能を実装する際は、ユーザーがサイドバーをカスタマイズできることを忘れないでください。異なるユーザー選択でカスタマイズがどのように表示されるかテストしてください。例えば、ユーザーがサブカテゴリを追加したが親カテゴリを追加していない場合のネストされたカテゴリの外観などです。
関連リソース
- Creating quick access links to Discourse preference pages
- Customize text in Discourse
- Find a translation key with verbose localization


