「あなたのトピックは類似しています…」のオーバーレイを特定のカテゴリで無効化

こんにちは。

新しいトピックを入力中に表示される「あなたのトピックは類似しています…」というオーバーレイは、特に質問トピックには素晴らしい機能ですが、他のトピックではこれをスキップしてメッセージのプレビューのみを表示する方がよいかもしれません。

具体的には、求人投稿用の「Jobs」カテゴリと、作品紹介用の「Showcase」カテゴリを設けています。

どちらの場合も、以前に類似トピックが投稿されたかどうかは関係ありません。どうやら個別のトピックに対してこのオーバーレイを無効化する設定はないようですが、この機能の追加をご検討いただけませんでしょうか?

「いいね!」 9

確かに設定はありません。少なくとも、Composer にいくつかのクラスを追加することで、必要に応じて CSS で非表示にできるようにすることはサポートしています。

「いいね!」 2

@felixmariotto さん

とりあえず、簡単な jQuery を試してみましたが、残念ながらページをリロードした時のみ機能します(あまり役に立たないかもしれませんが、参考までに)。ページが切り替わる際にコードを実行する Discourse API の呼び出しもありますが、私にとっては手動でページをリロードした時のみ機能し、ページを移動した際には機能しないようです。そのため、以下の非常にシンプルな jQuery セレクターを使って「ページリロード時に非表示にする」以上の結果を得ることはできませんでした。

この例では、カテゴリに「Applications」という単語が含まれている場合に、非表示にしたい要素を隠すスニペットを示しています(参考までに):

<script>
$( document ).ready(function() {
      var cat = $('.category-name').html();
      if(cat.includes('Applications')){
          $('#suggested-topics').hide();
      }
});
</script>

もし私が Ember のライフサイクルフックをより深く理解していれば、このようなシンプルなコードを適切なライフサイクルフックに追加できるかもしれません。しかし、正直かつ残念ながら、私の Ember のスキルは非常に不足しており、ほぼ存在しないと言っても過言ではありません。

「いいね!」 1