インデントされた/ネストされたサイドバーカテゴリまたはサブカテゴリ

:warning: このテーマコンポーネントは、Discourse Indented Subcategories のために非推奨になりました。 代わりにそちらをご利用ください。そちらの方がずっとシンプルで使いやすいです。このリポジトリはメンテナンスされなくなり、2026年2月20日頃にアーカイブされる予定です。

:information_source: 概要 サイドバーで選択したカテゴリまたはサブカテゴリをインデント/ネストします
:hammer_and_wrench: リポジトリ https://github.com/Lillinator/discourse-nested-categories
:eyeglasses: プレビュー Discourse Theme Creatorでプレビュー
:question: インストールガイド テーマまたはテーマコンポーネントのインストール方法
:open_book: Discourseテーマは初めてですか? Discourseテーマの初心者向けガイド

このテーマコンポーネントをインストール

このシンプルなテーマコンポーネントには2つの使用方法があります。サイドバーでインデント(またはネスト)するカテゴリまたはサブカテゴリを選択する方法、または指定したリスト以外のすべてのカテゴリをインデントできるようにする方法です。ほとんどの人はもちろんサブカテゴリのみをインデントしてネストされているように見せたいと思いますが、リストされているカテゴリのいずれかをインデントできます。デスクトップ表示、モバイル表示、ヘッダーのドロップダウンメニューのすべてで機能します。コードの一部は@daxのおかげです。

設定は3つあります。必要なものに応じて、最初の設定のみを使用するか、2番目と3番目の設定を使用します。

設定 説明
indent only select categories インデントするカテゴリまたはサブカテゴリのリスト。
indent all categories except the following この設定を有効にすると、以下のリストにあるカテゴリを除くすべてのカテゴリがインデントされます。上記のリスト設定は空にする必要があります。
categories not to indent インデントしないカテゴリ

設定とサイドバーでの結果のスクリーンショット

選択したカテゴリのみをインデント

概要

設定:

結果:


指定されたカテゴリ以外をすべてインデント

設定:

結果:


注意: 上記のスクリーンショットのように、プライベートカテゴリのカテゴリ箇条書きの鍵アイコンを非表示にしたい場合は、こちらのコンポーネントを使用できます。

「いいね!」 28

はい!!!サイドバーがついに使えるようになるための、また一歩前進です!

「いいね!」 3

素晴らしい仕事だ、@Lilly

しかし、私のインスタンスのニーズには完全には合致しません。サブカテゴリが多く、カテゴリは少ないのです。そして、サブカテゴリは非常に動的です。

すべてのカテゴリとサブカテゴリがデフォルトでインデントされ、インデントすべきでないカテゴリのリストが表示される方が、私たちのインスタンスには適しています。

「いいね!」 3

うーん、考えてみましょう。おっしゃることは分かります。少し調整してみますが、いずれにしても(別のコンポーネントまたはいくつかの追加設定で)ユースケースに対応します。サブカテゴリの箇条書きのフォーマットや非表示を許可する設定を含めることも考えていました。:thinking:

「いいね!」 5

コンポーネントを更新し、インデントされたカテゴリを逆に設定できるようにしました。つまり、選択リストを除くすべてをインデントします。お役に立てば幸いです。:slight_smile:

「いいね!」 6

コミュニティで大変好評です。ありがとうございます!

「いいね!」 2

このコンポーネントを更新してください。「すべてのカテゴリ」ボタンが、「次を除くすべてのカテゴリをインデントする」設定が使用されている場合にもインデントされる問題を修正するため、本日マイナーアップデートをプッシュしました。

「いいね!」 4

リリー、このTCは両方の方法で楽しんでいます!

でも、くだらない質問があるんだけど:

なぜ、すべてのサブカテゴリ(カテゴリではなく)をデフォルトでインデントしないのですか?

素晴らしい仕事です、@Lilly

これをサブサブカテゴリでも機能するように調整する方法はありますか?

つまり、インデントレベルが2つ利用可能になります。

例:
「学習」というカテゴリがあり、サブカテゴリ(学習ツールとハウツー)があり、サブサブカテゴリはゲームとベストプラクティスです。
(学習 - 学習ツール - ゲーム)および(学習 - ハウツー - ベストプラクティス)

ゲームとベストプラクティスをこのようにネストできれば素晴らしいでしょう。

「いいね!」 2

落ち着きがないように見えませんか?

「いいね!」 1

Jagsterさん、こんにちは。
どういう意味か分かりません。すみません :frowning:

目は直線がないため、さまようことになります。そのため、テキストやツールバーなどで間隔などを可能な限り同じに保つようにしています。同時に、アイコンや色も変更されます。メインカテゴリのアイコンには何らかの情報価値がありますが、他のアイコンにはありません。それはナビゲーションを容易にするのではなく、反対です。そして、これらすべてが基本的に、書籍であれウェブであれ、深いネストが悪い考えである主な理由です。さらに、貴重なスペースを失い、カテゴリの名前はもはや名前ではなくなります。

そして、もしあなたが本当にそれほど多くの特定のトピックを持っていて、複数のメインカテゴリと少なくとも同数のサブカテゴリを使用する必要がある場合、なぜなら多くのサブサブカテゴリを持っているからです(そして常にメインと最初のレベルのサブは他のカテゴリを示すヘッダーにすぎません)、それは誰も使用しないほど長いサイドバーにつながるでしょう。

声に出して言うのは嫌ですが、それはcssスニペットとまったく同じように見えます。cssスニペットでは、インデントを使用して{ }ペアの論理構造を示します。それは読むためのものではありません。

「いいね!」 2

@Jagster さん、詳細なご説明ありがとうございます。フィードバックに心より感謝いたします。

サイドバーを過度に長くしないこと、また、色とアイコンの統一感がない点など、多くの素晴らしいご指摘をいただきました。

アコーディオンのようにネストされたカテゴリを展開できれば、サイドバーを短く保ちつつ、サイト内を素早くナビゲートできる、まさに両方の良いところを活かせるのですが。

「いいね!」 1

このトピックを読むことをお勧めします。特にWixフォーラムとそのカテゴリのシンプルさに関する投稿は必見です。

また、ユーザーは独自のカテゴリサイドバーセクションをカスタマイズできることも念頭に置いてください。

正直なところ、ネストされたサブサブカテゴリがここでどのように機能するかはわかりません。視覚的に少し混乱すると思います。このコンポーネントに組み込むことが可能かどうかもわかりません。

「いいね!」 6

これを自分のインスタンスにインストールしましたが、サブカテゴリがインデントされません…
少なくとも、私はそう思っていました。すべてインデントし、選択したものを除く、という設定にして、リストは空白のままにしました。
最初は、カテゴリを含むすべてをインデントしていることに気づきませんでした。
これを、「すべてのサブカテゴリをインデントする」だけのボックスを追加するように更新することは可能でしょうか?除外リストを追加することもできますが、私のユースケースでは、常にサブカテゴリをインデントし、カテゴリはインデントしたくありません。

ユースケースとしては、インデントしないカテゴリボックスにカテゴリを配置するだけで十分ではないでしょうか。

サブカテゴリをインデントするだけで済むのは良いのですが、@LillyさんがこのTCを開発した当時は、それを実現するのはかなり難しいことでした。個人的には、カテゴリが異常に動的でない限り、上記の解決策は非常に実用的だと思います。

せっかくなので…

機能リクエスト - 展開/折りたたみ可能なサブカテゴリ

これはここで議論されています:

これがこのテーマコンポーネントの拡張として機能するかどうか疑問に思っています。

もし協力してくれる方がいれば、これに向けて予算を確保できる可能性があります。

「いいね!」 1

ちなみに、私が追加したJS(いくつかの変更点も共有できる)は一時しのぎとして機能します。ページが読み込まれるとサブカテゴリーを折りたたみ、ユーザーが展開したり親カテゴリに訪れることを可能にするために、シェブロンを挿入しているだけです。ただし、いくつかの操作はナビゲーションを完全に書き換えてしまうため、サブカテゴリーを折りたたんだ状態に保つためにJSがクラスを再適用しなければならないことがあります(たとえば、上部のハンバーガーメニューとの操作やモバイル時など)。

もちろんです。それが私がやっていることです。すぐに理解できませんでした。
サイトを新規構築している間は、カテゴリやサブカテゴリを追加し続けるので少し面倒ですが、開発が完了すればほとんど静的になります。

「いいね!」 1

このテーマコンポーネントは、Discourse Indented Subcategories に取って代わられたため非推奨となりました。こちらの方がずっとシンプルで使いやすいので、そちらに切り替えてください。このリポジトリは今後メンテナンスされず、1か月後にアーカイブされます。

「いいね!」 2

@Lillyさん、ありがとうございます。OPが更新されました。

「いいね!」 1