サイドバーのメッセージセクション

:information_source: 概要 サイドバーに、未読メッセージのインジケーターを含む個人メッセージとグループメッセージの受信トレイへのリンクを追加します
:eyeglasses: プレビュー Theme Creator
:hammer_and_wrench: リポジトリ GitHub - moin-Jana/sidebar-messages-section: Adds personal and group message inbox links to the sidebar, including unread message indicators.
:question: インストールガイド テーマまたはテーマコンポーネントのインストール方法
:open_book: Discourseテーマは初めてですか? Discourseテーマを使用するための初心者ガイド

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

このコンポーネントは、サイドバーにメッセージセクションを追加し、ユーザーの個人受信トレイとアクセス権を持つグループ受信トレイへのリンクを提供します。このセクションには、セクションの見出しの隣に新しい個人メッセージを作成するためのボタンも含まれています。

個人受信トレイ

デフォルトでは、このコンポーネントはすべてのユーザーに個人受信トレイへのリンクを追加します。show_personal_inbox設定を使用すると、管理者はこれを完全に非表示にするか、サイト設定の「個人メッセージが有効なグループ」に基づいてプライベートメッセージを作成する権限を持つユーザーにのみ表示するように設定できます。これは、通知メニュー、ユーザーのプロフィール、およびサイドバーのコミュニティセクションで個人受信トレイのリンクが表示される方法と似ています。

:bulb: 個人受信トレイへの重複リンクを避けるために、サイドバーの最初のセクションにあるメッセージリンクを削除することを検討してください。これを行うには、その他メニューを開き、このセクションをカスタマイズを選択してから、セクションからメッセージリンクを削除します。

グループ受信トレイ

メッセージが少なくとも1つ含まれており、ユーザーがメンバーであるすべてのグループ受信トレイは、自動的にサイドバーに表示されます。管理者はhide_group_inboxes設定を使用して特定のグループ受信トレイを非表示にできます。これは、グループ受信トレイがアクティブに使用されなくなった場合に役立ちます。

未読インジケーター

各受信トレイリンクは、「新しい項目の数を表示」に関するユーザーの設定に基づいて現在のメッセージ状態(ドットまたは数値)を表示します。100を超える値は99+と表示されます。

「いいね!」 13

すごい、よくやった、モイン! :clap: :tada:

「いいね!」 3

軽微な提案ですが、javascripts/discourse/api-initializers/group-inboxes-in-sidebar.gjs は GJS ではなく JS ファイルであるべきではないでしょうか?

素晴らしいコンポーネントです!


コードを10分間精査し、コアクラスを調べましたが、Discourse がいかに驚くほど作られており、すべてがうまく収まっているかに感銘を受けました。

「いいね!」 2

はい、APIはセクションを他のセクションと同じように見せ、機能させるために必要なほぼすべてを提供しています。チャットもそれを使用しており、おそらく開発に影響を与えました。機能は同時に開発されました。
残念ながら、コアセクションの未読トピック数を表示する get badgeText() はサポートされていないため、数字については少し工夫する必要がありました。

「いいね!」 4

これに関する管理者設定が見つからなかったので、CSSでこれを非表示にするというPSAを投稿します。

.sidebar-section-link[data-link-name="my-messages"] {
    display: none;
}
「いいね!」 1

CSSでリンクを非表示にするのは、管理者がサイドバーをカスタマイズするための既存のオプションを使用するよりも、壊れやすいように思えますが、なぜCSSでの非表示を好むのですか?

[quote=“Moin, post:1, topic:347764”]このセクションをカスタマイズするには:

  1. サイドバーのその他をクリックします
  2. 拡張メニューの一番下にあるこのセクションをカスタマイズを選択します

The image shows the first section of a Discourse sidebar highlighting the "More" menu and the "Customize this section" option inside the menu.
[/quote]

「いいね!」 2

ダープ、その通りです。管理者コンソールやコア機能の設定だろうと考えて、考えすぎていました。

「いいね!」 1

あなただけではありませんでした。:joy:


これは素敵なコンポーネントですね!

「いいね!」 1

{“content”:“ノートを拡張しました:\n[quote="Moin, post:1, topic:389664"]\n> :bulb: 個人用受信トレイへの重複リンクを避けるため、サイドバーの最初のセクションにあるメッセージリンクを削除することを検討してください。これを行うには、その他メニューを開き、このセクションをカスタマイズを選択し、セクションからメッセージリンクを削除します。\n[/quote]”,“target_locale”:“ja”}

「いいね!」 2

はい、そうでしたね。しかし、管理者としては管理パネルを操作することに慣れているため、手順をざっと見るときに細部を見落としてしまうことがあります :wink:

コアアップデートであっても、私たちが使用している何かが別の領域に移動するまで、細部まですべてを読み込まない人も多いのではないでしょうか。

ずっと昔のAndroid、例えばGingerbreadでは、ナビゲーションとマップが一緒になっていたと記憶しています。アップデートでマップと統合された後、ナビゲーションを探すのに10分くらい費やしましたよ。:joy: