コレクション

:information_source: 概要 ユーザーがリンクされたトピックのコレクションを作成します
:hammer_and_wrench: リポジトリリンク https://github.com/Alteras1/discourse-collections
:open_book: インストールガイド Discourseにプラグインをインストールする方法

プレビュー

モバイル

コレクション

これにより、ユーザーはトピックを表示する際に表示されるトピックのコレクションを作成できます。コレクションには任意のURLを含めることができ、リンクされたすべてのトピックに表示されます。コレクションはセクションに整理でき、コレクションへの変更はリンクされたすべてのトピックに反映されます。リンクされるトピックに制限はないため、ユーザーはカテゴリ/タグを横断してコレクションを作成できます。

タイトルと説明

オプションの入力フィールドです。提供された場合、これらはリストの上部に表示されます。

セクション

オプションの整理機能です。セクションヘッダーを追加することで、コレクションをセクションに分割し、折りたたみ可能なセクションを表示できます。

サブコレクション

ユーザーはサブコレクションを作成することもできます。これは単一のトピックにのみ表示され、ユーザーは関連するURL(特定の投稿/外部リソースなど)を単一のトピックにのみリンクできます。追加されたトピックURLはリンクされません。

パーミッション

このプラグインにより、ユーザーは自分のトピックのコレクションを作成できます。デフォルトでは、ユーザーは自分のトピックにのみリンクでき、他のユーザーをメンテナーとして追加する必要があります。メンテナーは自分のトピックをコレクションに追加できます。この設定を無効にすると、特定のグループのみが任意のコレクションを完全に制御できます(デフォルトではStaffおよびTL4)。

パーミッションデモ

設定

名前 説明
collections enabled プラグインを有効/無効にします。デフォルト: true
collection by topic owner トピックのOPがコレクションを作成できるようにします。デフォルト: true
collection by topic owner allow groups コレクションを作成できるトピックのOPを制限します。collection by topic ownerを制限します。デフォルト: TL1
collection modification by allowed groups 任意のコレクションを作成/変更できるグループ。デフォルト: Admin Moderators TL4
sections in subcollection サブコレクションでセクションヘッダーを許可します。デフォルト: true

代替案

このプラグインは、Discourse Doc Categories プラグインに強く影響を受けています(そしてかつては基づいていました)。Doc Categoriesプラグインは優れたインデックス作成メカニズムを備えており、表示も優れていますが、その設計はウィキスタイルのページを対象としており、すべてが単一のカテゴリにまとめられています。同様に、インデックス作成は別のトピックでのフォーマットされたテキスト入力に依存しており、それ自体に長所と短所があります。

DiscoTOC - automatic table of contents コンポーネントも、投稿本文の外でリンクを整理できますが、単一のトピックに限定されます。

単にウィキスタイルの整理が目的の場合は、Discourse Doc Categories の方が適しています。いくつかのページにリンクされたトピックが必要なだけの場合は、DiscoTOC - automatic table of contents の方が適しています。

注記

これは元々、私が所属しているフォーラムをDiscourseに移行するのをサポートするために設計されました。執筆中心のフォーラムとして、ユーザーはさまざまな目的で個別のトピックを維持しており、カテゴリを横断するトピック間のリンクが実質的に必要となる状況が発生しています。これを促進するために、このプラグインを作成してユーザーの自己組織化をサポートしました。

これは、ユーザーが入力したdivと他の投稿へのURLを使用してインデックス作成を行うテーマコンポーネントにすぎないという別のタイムラインがあります。しかし、ツール、ウィザード、コードの90%を開発した後、それはそれだけの価値はなく、ユーザーはすべてのチュートリアルをスキップして、うまくいかない理由について不平を言うだろうと判断しました。そのため、そのパスは破棄されました。それは軽量なソリューションになるため、悪い解決策ではありませんが、ユーザーに複数の投稿だけでなく、正しいフォーマットを確認するために不必要な負担をかけることになります。

UI機能(アイコンなど)とパーミッションシステムについてまだ100%確信が持てないため、現在これを#experimentalとしてマークしています。また、自動単体テストを追加する必要があります。

「いいね!」 20

参考情報:すべての動画が壊れていました :thinking: (iPad)

「いいね!」 1

あれ、iOS SafariはWebMに対応していたと思っていたのですが…

動画をMP4に差し替えました。ありがとう!

「いいね!」 5

Discourse Docs のように、「公開」コレクションを有効にすることは可能ですか?

「いいね!」 1

申し訳ありませんが、すべてのコレクションは「公開」です。すべてのユーザーが同じトピックで同じコレクションを見ることができます。このプラグインは、トピックを整理するためのものであり、ユーザーのプライベートな「ブックマークフォルダ」のようなものではありません。

「いいね!」 5

サイドバーでの絵文字とカラーブロックのサポートを追加してプラグインを更新しました!

「いいね!」 5

これは本当に素晴らしいですね。そして、完全に優れたドキュメントです。meta.discourse.orgPlugin の中で最もドキュメントが充実しているものとして、私の票を獲得しました!

これを拡張して、トピックリストもカバーすることを検討しましたか?

カテゴリごと、またはタグごとのリンク集があると非常に役立つことがよくあります。たとえば、特定のグループ専用のプライベートカテゴリで、他のツール(Google ドキュメントのいくつかのフォルダ、地方自治体のポータル、関連するチャットチャンネル、グループ受信トレイなど)も使用している場合です。カテゴリモデレーターがそれを制御できるのが理想的です。

「いいね!」 3

どうもありがとうございます!

以前から検討していたことですが、トピックを整理するためのユーザー主導の方法という現在のデザインにはあまり合わないと思います。モデレーターの管理に限定する必要があるため、カテゴリ/タグレベルには理想的ではありません。元のユースケースは、1〜2トピックには大きすぎるが、タグ/カテゴリには小さすぎる関連トピックのリンクをカバーすることでした。

カテゴリのサイドバーにインデックスを表示するトピックリストは、Discourse Doc Categories プラグインを介して実現できますが、設定方法は異なります。2つのプラグインで非常に似たことを行うのは確かに面倒ですが、それぞれの元の哲学は十分異なるため、別々のアプローチを正当化できると思います。

Private Topics Plugin の互換拡張機能を追加することは、ユーザーの観点からは非常にクールなアイデアです。検討する必要があります…

残るのはタグレベルです。Discourse Doc Categories の PR を作成する(または新しいプラグイン/TC を作成する)ことは選択肢ですが、積極的に考えているわけではありません。将来的にそうなるかもしれません。

実際、これは私のユースケースにはうまく機能するでしょう。そこまで適応できるかどうかはわかりませんが(今週後半に試してみます)。

非常に興味深いですね。どのようなユースケースを想定していますか?

一般ユーザーには、プライベートトピックが有効になっているカテゴリには、自分のトピックのみが表示されます。そのため、コレクションプラグインがユーザーごとにトピックレベルからカテゴリレベルにコレクションをホイストすることを許可する数少ない場所の1つとして、これが理にかなっていると私は考えています。

私が参加しているフォーラムには、ユーザーが個人的な下書き/テスト場として使用できるプライベートカテゴリがあります。そして、彼らは多くのトピックを作成するため、ユーザー主導のトピック整理がここで時々行われます。

私は、ユーザーが自分の好きなトピックをカテゴリとして作成し、そこに配置できる、ギャラリーのようなコレクションシステムになることを本当に期待していました。まあ、仕方ありませんね。

これはどうしてそうではないのですか?

「いいね!」 1

カテゴリを作成できないのだと推測します。

このプラグインの、本の章のようにトピックの任意のシーケンスを作成するためのドラッグ&ドロップUIは、簡単に再配置できるため、本当に気に入っています。

コレクションに対して、次のような順次ナビゲーションを追加するためのテーマコンポーネントを開始しました。 \text{<kbd>Previous <}\text{<kbd>Next >}、およびモーダル内のページネーション…

こちらが私の作業リポジトリです

「いいね!」 3

大変必要とされていました。今日これを確認したところ、これが最後に必要とされていたコンポーネントのようでした。

@Alteras 「コレクション作成」モーダルのモーダルを閉じるXボタンでバグが発生しています。ホバーしてクリックすることはできますが、ページを更新するまでモーダルが閉じません。

「いいね!」 1

おお、これは良いコンセプトですね。異なるリンクされたトピック投稿を素早く表示するためのモーダルが気に入りました。また、サイドバーを24時間年中無休で開いていないユーザーに、コレクションがあることを知らせるのにも役立ちます。

投稿の内容をリダイレクトするのではなく、入れ替えるという決定について興味があります。

サイドバーを使わずにトピック間を移動するために、タイムラインの上に <kbd>< Prev</kbd><kbd>Next > </kbd> を使用するというアイデアは本当に気に入りました。長い最初の投稿のトピックで、上に戻る必要がないように、目次のようにタイムラインと一緒にするのはどうでしょうか…あるいは、単に最初/最後の投稿を装飾するだけでも良いかもしれません…

もしよろしければ、それらのアイデアのいくつかをプラグインに直接追加することを検討したいです。管理者向けの追加のサイト設定があれば、さらに良いかもしれません。もちろん、ユーザーにより多くのカスタマイズを提供するために、プラグインをベースにした TC があっても異論はありません。TC で何かお手伝いできることがあれば教えてください。DOM を解析する必要なく、現在表示されているコレクション情報は Ember サービス service:collection-sidebar から取得できるはずです。

うーん…それは本当に奇妙ですね。再現できません。最近、非推奨の問題に対処するためにプラグインを更新するいくつかの変更を行ったので、それが影響したのかもしれませんか?プラグインが更新されているか確認してください。また、セットアップの詳細(ブラウザ、モバイル/デスクトップ、Discourse のバージョン)を共有してください。

「いいね!」 2

私は古いバージョンのままです、たぶんそれが原因でしょう。まだ11月6日のコミットを使っていました。
追記:取り下げます、更新したら解決しました。

「いいね!」 1

私はその速さが気に入っています。合理的なデザインではありません。

ここで項目を任意に順序付けることができるため、順序付けはタイムラインに全く結びついていません。私の最初の目的は、ユーザープロファイルの表示でコアから使用している、ネストされた水平スクロールメニューの動作を再利用することです。例えば、(固定された)コレクションのタイトルと説明(存在する場合)の下に、セクションヘッダーとその関連トピックタイトルが続く、水平にスクロール/スワイプ可能な2つの行がある場合などです。

また、モーダル内には、モーダルの外側の左サイドバーの動作を再現する、折りたたみ可能な(左から素早くスライドイン/アウトする)垂直表示もあります。

どうぞ、実行してください!

「いいね!」 2

これで動作するようになりました(上記のアップデートに関する事前通知ありがとうございます)、いくつか気づいた点があります。

  1. ユーザーが許可されたグループに属していなくても、「コレクション」ボタンが表示されます。コレクションを作成しようとすると、内部サーバーエラー(モーダル内の赤いバーに優雅に表示されます)が発生します。
  2. コレクションのサイドバーにある一番下のボタンは、元の「コレクションを作成」オプションを提供しています。管理するには元の投稿にあるボタンを使用する必要があります。コレクションのサイドバーにあるボタンからすぐに「管理」オプションがあると非常に便利でしょう。
  3. コレクションとサブコレクションの権限を分離することは可能でしょうか?サブコレクションは、コレクションがリンクされたすべてのトピックに与える広範な影響なしに、自分のトピックをまとめることを望む個人にとって非常に役立つ可能性があります。

最後に、このプラグインは同じトピックをリンクする2つのコレクションをどのように処理しますか?2つのサブコレクションは?これは、コレクション機能が好きなユーザーの重複する目標をより簡単に管理するために、提案 #3 に傾かせる要因になります。

編集: #1 は、所有していないトピックを許可する、許可されたグループによるコレクションの変更に関連するエラーであることに気づきました。それでも、より良いエラーメッセージがあると役立つかもしれません!

「いいね!」 1

したがって、「許可されたグループによるコレクションの変更」設定は、スタッフやヘルパーのように高い権限を持つユーザーを対象としています。ただし、エラーを修正する必要があるようです。

collection modification by allowed groups が適切に高いレベルに設定されていれば、コレクションとサブコレクションはトピックの所有者(およびスタッフ)のみが作成/変更できるはずです。トピックの所有者は、通常のユーザーをコレクションまたはサブコレクションのメンテナーとして追加でき、そのメンテナーが自分のトピックを追加できるようになるはずです。分離が必要となるような設定がどのようなものか、私にはよくわかりません。

2つのコレクションが同じトピックにリンクすることはできません。トピックがすでにコレクション内にある場合にリンクしようとすると、エラーが表示されるはずです。同様に、トピックにつき1つのサブコレクションのみが許可されます。これは、コレクションがすべて公開されており、トピックの所有者によってのみ作成されるべきであるためです。


うーん… 公開または非公開で表示できるブックマークのフォルダーだけの別のプラグインを作成した方が良いような気がします… 「個人用コレクション?」「ブックマークライブラリ?」「トピックプレイリスト?」あるいは、これを拡張するだけかもしれません。しかし、根本的なコードと哲学は2つの機能の間でかなり異なるでしょう。「コレクション」という名前が非常に広範で、かなりの数の方法で解釈できるのは少し残念です。

「いいね!」 2