| 概要 | トピック内のテーブルを検索可能なアイテムに変換し、メンバーが + で言及できるようにします。リンクとワンボックスプレビュー付きです。 |
|
| リポジトリ | Discourse Mentionables | |
| インストールガイド | セルフホスト型 Discourse サイトにプラグインをインストールする | |
| スポンサーシップ | これらのプラグインのメンテナンスと最新バージョンの Discourse での動作維持をサポートするため、継続的な開発へのスポンサー登録をご検討ください。 |
コミュニティが話し合うもの(書籍、製品、プロジェクト、場所、サポートリソース、または URL を持つ他の任何东西)に共通の語彙を与えましょう。
メンバーは + と名称の一部を入力し、候補を選択すると、アドレスを覚えることなく読みやすいリンクが表示されます。
機能
- URL のみで開始。 インポーターが名前を取得し、スラッグを生成します。独自の名称とスラッグを任意の上書きとして追加できます。
- 入力しながら検索。 Markdown エディタおよびリッチテキストエディタの両方で、
+を入力するか、コンポーザーツールバーのボタンを使用してカタログを検索できます。 - 読みやすいインラインリンク。 言及はアイテムの表示名を使用したコンパクトなピルとして表示され、投稿の Markdown には安定したスラッグが含まれます。
- ネイティブワンボックス。 言及を単独行に配置すると、Discourse の既存のレイアウトとサポートされている宛先を使用してワンボックスを表示します。
- デスクトッププレビュー。 インラインピルにホバーまたはフォーカスすると、「元のページを開く」リンク付きのフローティングプレビューが開きます。通常のクリックでは宛先が開きます。
- 管理者が Discourse で編集できるカタログ。 トピックの最初の投稿にある Markdown テーブルからインポートします。Google アカウントや API 認証情報は不要です。
- 管理者用のテーブルボタン。 コンポーザーツールバーから空の mentionables テーブルを挿入し、アイテムを入力できます。
ワンボックスの外観は、宛先と Discourse の標準的なワンボックスサポートに依存します。サポートされていない宛先はリンクのままになります。フローティングカードにはログインが必要です。ゲストでも宛先リンクに従うことは可能です。コード内の言及は無視され、リストや引用内の言及はインラインのままになります。
Basic Mentionables と Pro 拡張機能
Basic Mentionables はベースプラグインです。Pro はオプションのコンパニオンプラグインであり、並行してインストールされます。Pro はその依存関係を通じてベース機能を包含します。
| 機能 | Basic Mentionables | Pro 拡張機能あり |
|---|---|---|
| トピックの最初の投稿から Markdown テーブルをインポート | はい | はい |
| ソーストピックを制限カテゴリ内に保つ | はい | はい |
| 管理者専用のテーブルスケルトンを挿入するためのコンポーザーボタン | はい | はい(アイコン列を含む) |
Markdown およびリッチテキストエディタで + を使用して検索 |
はい | はい |
| インライン言及ピルと単独のネイティブワンボックス | はい | はい |
| デスクトップでのホバーまたはキーボードフォーカス時のフローティングプレビュー | はい | はい(デフォルトのホバーモード) |
| サービスアカウントを使用して Google Sheets からインポート | — | はい |
| トピックテーブルと Google Sheets の間を選択 | トピックテーブルのみ | はい |
| 12時間ごとの自動同期 | — | オプション(デフォルトではオフ) |
| オプションのアイコン名と HTML カラーをインポート | — | はい(どちらのソースからも) |
| クリックまたはタップでフローティングプレビューを開く(タッチデバイスを含む) | — | オプション |
Pro の icon と icon_colour 列は、言及の名前の前にカラーアイコンを追加します。例えば、ハンドブックには book と #2563eb を使用します。
mentionables_pro_click_to_preview が有効になっている場合、ピルをクリックまたはタップするとそのプレビューが開き、プレビュー内の「元のページを開く」リンクはターゲットへ移動します。
クイックセットアップ
-
上記のインストールガイドを使用してベースプラグインをインストールします。インストール後に Discourse を再構築してください。
-
カタログ用のトピックを作成します。管理者として、コンポーザーツールバーの mentionables テーブルを挿入 を使用するか、このテーブルを最初の投稿に貼り付けてください:
| name | url | slug | image_url | | ------------------ | ----------------------------------- | ------------------ | --------- | | Getting started | https://example.com/getting-started | getting-started | | | Community handbook | https://example.com/handbook | community-handbook | | | Events calendar | https://example.com/events | events-calendar | | -
サンプル URL をご自身のものに置き換え、投稿を保存し、
mentionables_topic_idをそのトピックの数値 ID に設定します。mentionables_enabledを有効のままにしてください。Pro をインストールしている場合は、この設定に対してmentionables_sourceでtopic_tableを選択する必要があります。 -
管理 → プラグイン → Mentionables を開き、インポートを開始 をクリックしてから、レポートを確認するために 更新 をクリックします。バックグラウンドジョブワーカーが実行されている必要があります。
-
ブラウザを再読み込みし、コンポーザーを開いて
+を入力してアイテムを試してみてください。
小文字のカラム名を使用してください。必須なのは url のみで、http:// または https:// で始まる必要があります。URL のみの行では、宛先から名前を取得し、スラッグを生成します。これらのデフォルトを上書きするために name、slug、または両方を指定でき、これらオプションを一つのテーブル内で混合できます。タイトルが利用できない場合、URL が表示名になります。ソースにスラッグが含まれていない場合、既存の URL はスラッグを保持します。
image_url と description はオプションです。
インポーターは、最初の投稿内の url 列を持つ最初の引用なしテーブルを読み取ります。返信、引用されたテーブル、フェンストコードサンプルは無視されます。ソーストピックは、パーソナルメッセージではなく、通常で削除されていないトピックである必要があります。
ソースのプライバシーとカタログの更新
ソーストピックをスタッフまたは他の制限カテゴリ内に保ち、信頼できる人だけがメンテナンスできるようにすることができます。インポートされた名前、URL、画像は mentionables のユーザーに利用可能になります。 トピックを制限しても、インポートされたカタログがプライベートになるわけではありません。機密情報はテーブルに入れないでください。
各インポートは URL によって同期されます:一致する URL は更新され、新しい URL はレコードを作成し、ソースから削除された URL はレコードを削除します。完全なソースが有効である必要があります。重複した URL やスラッグ、無効な行、フェッチ失敗、空のデータセットはカタログを変更しません。意図的なクリアには すべて削除 を使用してください。ソーストピックとスプレッドシートは決して変更されません。Pro のオプション設定 mentionables_pro_sync_enabled は、同じインポートを 12 時間ごとに実行します。インポート後にブラウザを再読み込みしてください。既存の調理済み投稿は自動的に再バークされず、スラッグを明示的に変更すると以前の +slug リファレンスが壊れる可能性があります。
設定と追加情報
| 設定 | 目的 |
|---|---|
mentionables_enabled |
Mentionables を有効化または無効化します。 |
mentionables_topic_id |
最初の投稿にソーステーブルを含むトピック。 |
mentionables_autocomplete_limit |
提案の最大数。デフォルトは 5 です。 |
mentionables_onebox_fallback |
名前が指定されている場合でも、欠落した画像/説明を取得します。デフォルトではオフです。 |
完全なセットアップガイド、インポート動作、トラブルシューティングについては、README を参照してください。スクリーンショットは、プラグインのテストフィクスチャからのサンプルデータを使用しています。








