スタッフのお知らせ機能に追加された新しい「Added By...」を無効にする方法は?

こんにちは
スタッフ通知に、スタッフまたは管理者が追加したスタッフ通知に体系的に「Added by Name-of-staff」が追加されるという新しい変更があったことに気づきました。

しかし、私たちのユースケースでは、この追加された強制的な「Added by Name」を含めたくない、または含める必要のないスタッフ通知があります。

  1. スタッフがしばらく投稿していない場合、自動スタッフ通知が表示されます。「Person hasn’t made their post in a while…etc」または初めての投稿の場合、「Made their first post, welcome them to the community」という通知が表示されますが、私はこれをそのスタッフの役職と役割に変更します。例えば、自動スタッフ通知を削除し、「Person is a Product Manager in the Analytics Team.」のように更新します。この場合、「Person is a Product Manager in the Analytics Team (Added by @gassim)」にしたくありません。:cry:
  2. リソース、スライド、または録画のフォローアップ投稿の場合、私またはスタッフの誰かがリソースへのリンクで返信し、その上に「:video_camera: Recording」のようなスタッフ通知を追加しますが、「:video_camera: Recording (Added by @gassim)」と表示されるのは望ましくありません。

上記のユースケースでは、名前を含めることは関連性がありません。誰がスタッフ通知を追加したかを実際に把握する必要がある場合は、Data Explorerまたは管理者 > ログ > スタッフアクション - アクション:「スタッフノートを追加」から確認できます。

スタッフに(Added by)を含めてほしい場合は、含めたい場合に手動で行うことができます。

この新機能を無効にする方法はありますか?

ありがとうございます!

「いいね!」 1

これに対する設定ソリューションはありません。ただし、JavaScript を使用すると実現できます。

テーマまたは新しいテーマコンポーネントで、JS タブに以下を追加します。

import { apiInitializer } from "discourse/lib/api";
import { schedule } from "@ember/runloop";

export default apiInitializer((api) => {
  const current = api.getCurrentUser();
  if (!current || !current.staff) {
    return;
  }

  // スタッフ通知を含む最初の段落以降のすべてを削除します。
  api.decorateCookedElement((element, helper) => {
    const post = helper?.getModel();
    if (!post || !post.notice) {
      return;
    }

    schedule("afterRender", () => {
      const postNoticeMessage = document.querySelector(
        `article[data-post-id="${post.id}"] .post-notice-message`
      );

      if (postNoticeMessage) {
        postNoticeMessage.replaceWith(postNoticeMessage.firstChild);
      }
    });
  });
});

これで十分なはずです。

「いいね!」 2

これらの「追加者」は staff のメンバーにのみ表示され、一般ユーザーには表示されないことを指摘しておきます。

「いいね!」 5

ありがとう、バスさん、良いポイントです!

「いいね!」 2

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.