このガイドでは、フィルター、オプション、高度なテクニックを含む、Discourse の検索機能の包括的な概要を説明します。
必要なユーザーレベル: 全ユーザー
Discourse は、多数のフィルターと条件を備えた強力な検索機能を提供します。高度な検索フォームを使用すると、関連する構文がクエリに自動的に追加されます。たとえば、私のメッセージ内を選択すると、検索クエリに in:personal が追加されます。
このガイドでは、Discourse で利用可能なすべての検索オプションと機能について説明し、検索機能を使用するための便利なヒントとコツを提供します。
フィルター
Discourse は、検索結果を絞り込むのに役立つ幅広いフィルターを提供します。利用可能なフィルターの包括的なリストを次に示します。
| 構文 | 説明 |
|---|---|
in:personal-direct |
2 人のユーザー間の個人メッセージ内の投稿のみを返します |
in:all-pms |
|
in:all |
公開トピックと個人メッセージからの投稿を返します |
in:tagged |
少なくとも 1 つのタグが付いたトピックからの投稿を返します |
in:untagged |
タグのないトピックからの投稿を返します |
in:seen |
あなたが見た投稿を返します(ログインユーザーの場合) |
in:unseen |
あなたが見ていない投稿を返します(ログインユーザーの場合) |
in:wiki |
wiki 投稿を返します |
in:watching |
あなたがウォッチしているトピックからの投稿を返します |
in:tracking |
あなたがトラッキングしているトピックからの投稿を返します |
posts_count:X |
ちょうど X 件の投稿があるトピックからの投稿を返します |
min_posts:X |
少なくとも X 件の投稿があるトピックからの投稿を返します |
max_posts:X |
最大 X 件の投稿があるトピックからの投稿を返します |
min_views:X |
少なくとも X 回閲覧されたトピックからの投稿を返します |
max_views:X |
最大 X 回閲覧されたトピックからの投稿を返します |
badge:name_or_id |
特定のバッジ付与に関連付けられた投稿を返します |
created:@username |
username によって作成されたトピックからの投稿を返します |
group:group_name |
group_name グループ内のユーザーからの投稿を返します |
group_messages:group_name |
group_name グループに送信された個人メッセージからの投稿を返します |
personal_messages:username |
|
-tags:tag1,tag2,tag3 |
tag1、tag2、または tag3 のタグが付いていない投稿を返します |
filetypes:ext1,ext2,ext3 |
ext1、ext2、または ext3 のファイル拡張子のアップロードが含まれる投稿を返します |
categories:category1,category2 |
category1 および category2 カテゴリからの投稿を返します |
status:open |
クローズまたはアーカイブされていないトピックからの投稿を返します |
status:closed |
クローズされたトピックからの投稿を返します |
status:archived |
アーカイブされたトピックからの投稿を返します |
status:noreplies |
返信のないトピックからの投稿を返します |
status:single_user |
1 人のユーザーからの投稿のみがあるトピックからの投稿を返します |
status:public |
公開カテゴリのトピックからの投稿を返します |
before:YYYY-MM-DD |
指定された日付より前に作成された投稿を返します |
after:YYYY-MM-DD |
指定された日付より後に作成された投稿を返します |
with:images |
画像を含む投稿を返します |
並べ替え
次の並べ替えオプションを使用して、検索結果を並べ替えることができます。
| 構文 | 説明 |
|---|---|
order:latest |
結果を新しい順に並べ替えます(ショートカット: l) |
order:oldest |
結果を古い順に並べ替えます |
order:latest_topic |
トピックの日付で結果を新しい順に並べ替えます |
order:oldest_topic |
トピックの日付で結果を古い順に並べ替えます |
order:views |
閲覧数で結果を並べ替えます |
order:likes |
いいねの数で結果を並べ替えます |
order:read |
(ログインのみ)最後にトピックを訪問した日付で並べ替えます(ショートカット: r) |
エイリアス
Discourse は、検索を容易にするためにいくつかのエイリアスを提供しています。
| 構文 | 同等 |
|---|---|
l |
order:latest |
in:personal |
in:messages |
min_post_count: |
min_post: |
in:mine |
in:created |
category: |
categories: |
# |
コンテキストに応じて、カテゴリとタグの両方に使用できます |
user: |
@ |
@me |
@your_own_username |
f |
in:first |
t |
in:title |
完全一致の単語を検索する
Discourse は、関連する単語を見つけるために ステミング と呼ばれる手法を使用します。これは多くの場合役立ちますが、完全一致の単語を検索したい場合もあります。これは、単語をスペースと二重引用符で囲むことで実行できます。例:「 \" term \"」。
これにより、「term」という単語のみが検索され、他の関連単語は除外されます。
スペースは検索語の一部と見なされるため、投稿の最初または最後の単語が「term」の場合、前後にスペースがないため返されないことに注意してください。
例:@メンションの検索
現在、@メンションの直接検索はサポートされていません。ただし、完全一致の単語検索方法を使用してこれを実現できます。
https://meta.discourse.org/search?q=“%20%40username%20”
これは、
%20が URL でスペースがエンコードされる方法であり、%40が@記号がエンコードされる方法であるため機能します。
このクエリは、「@username」(スペースで囲まれた)を具体的に検索します。
検索オプションの組み合わせ
複数の検索オプションを組み合わせて、より具体的なクエリを作成できます。たとえば:
-
status:open category:support tag:urgent after:2023-01-01 order:latest
これは、2023 年 1 月 1 日以降に作成された、緊急タグが付いたオープンなサポート トピックを検索し、結果を最新の投稿で並べ替えます。 -
@jane_doe in:watching min_posts:5 with:images
これは、あなたがウォッチしているトピックで、少なくとも 5 件の投稿があり、画像が含まれている Jane Doe による投稿を検索します。
アクセス許可と制限
一部の高度な検索オプションでは、特定のユーザーアクセス許可が必要な場合や、特定のユーザーロールに限定される場合があります。たとえば:
in:all-pmsは、通常のユーザーやモデレーターではなく、管理者のみが利用できます。personal_messages:usernameは、管理者のみが利用できます。
高度な検索オプションを使用する際は、常にユーザーロールとアクセス許可を考慮してください。
検索の代替:トピックリストフィルター
多くのフィルタータイプをサポートする実験的な フィルター 機能が利用可能です。公式トピックで詳細を確認できます:Experimental topics list filter feature
ソースファイル
これらのオプションをより技術的に確認するには、すべての検索フィルターとパラメータは search.rb にあります。advanced_filter メソッドを探してください。
追加のヒント
-
#bugのようなタグのメンションも検索できます:https://meta.discourse.org/search?q=“%20%23bug” -
一部のフィルターはプラグインによって追加される場合があります。たとえば、Solved プラグインは次を追加します。
status:solved: 解決済みのトピックからの投稿を返しますstatus:unsolved: 解決済みマークを許可するカテゴリで、未解決のトピックからの投稿を返します
-
Topic Voting プラグインは、追加の並べ替えオプションを追加します。
order:votes: 投稿を含むトピックの投票数で結果を並べ替えます
さまざまなフィルターとオプションの組み合わせを試して、ニーズに最も効果的な検索戦略を見つけてください。

