ユーザーが100以上の問題を解決した場合に自動的にバッジを追加することは可能ですか?
Solved プラグインには、1、10、50、150 の解決済みバッジが組み込まれています。有効にするだけで使用できます。 - https://meta.discourse.org/t/discourse-solved/30155#solved-badges-9
ただし、100 のバッジを作成するには、それらの SQL のいずれかをコピーし、しきい値を変更して、新しいカスタム SQL トリガーバッジとして追加できます。詳細については、Creating triggered custom badge queries を参照してください。有効にする方法については、Enable Badge SQL を参照してください。
返信ありがとうございます。理解できました ![]()
しかし、このクエリをテストすると:
SELECT post_id, user_id, created_at AS granted_at
FROM (
SELECT p.id AS post_id, p.user_id, pcf.created_at,
ROW_NUMBER() OVER (PARTITION BY p.user_id ORDER BY pcf.created_at) AS row_number
FROM post_custom_fields pcf
JOIN badge_posts p ON pcf.post_id = p.id
JOIN topics t ON p.topic_id = t.id
WHERE pcf.name = 'is_accepted_answer'
AND p.user_id <> t.user_id -- OPによる解決トピックを無視
AND (:backfill OR p.id IN (:post_ids))
) x
WHERE row_number = 100
結果は次のようになります。
2人のユーザーに対してバッジが2つだけ表示されますが、他のユーザーは100個以上持っているのに、クエリ結果に表示されません…
しかし、このユーザーは106個のソリューションを持っています:
もう一つ質問ですが、私の言語に合わせてテキストを変更することは可能ですか?どのようにすればよいかわかりません。
バッジクエリは自己解決や削除済みトピックからの解決をカウントしませんが、ディレクトリクエリは現在カウントします。これにより、カウントにわずかな不一致が生じる可能性があります。
解決済みバッジのテキストは、カスタマイズされたテキストで badges.solved を検索することで更新できます。これにより、関連するすべてのフィールドが表示されます。![]()
/admin/customize/site_texts?q=badges.solved
「セルフソリューション」とはどういう意味ですか?
アップデートのテキストはOKです。ありがとうございます ![]()
この行:
トピック作成者自身が解決策を与えた場合、その解決策を除外します。
OK、ありがとうございます ![]()
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.

