@donaldsoncd JSタブにこの部分を追加してみてください。ユーザーページでのみボタンを非表示にします。ボタンはユーザーカードには表示されたままです。
import { apiInitializer } from "discourse/lib/api";
export default apiInitializer((api) => {
api.onPageChange((url, title) => {
if (url.startsWith("/u/natedhaliwal")) {
const pmBtn = document.querySelector("button.compose-pm");
pmBtn.style.display = "none";
const chatBtn = document.querySelector("li.user-card-below-message-button.chat-button");
if (chatBtn.parentNode.className != "usercard-controls") {
chatBtn.style.display = "none";
}
}
});
});
少しハッキーですが、目的は達成できます。
/u/natedhaliwalの部分を/u/<username>に置き換えることができます。
誰ともプライベートメッセージやチャットができなくしたい場合は、以下を行う必要があります。
discourse.example.com/my/preferences/usersに移動します。- 「他のユーザーが私にプライベートメッセージやチャットのダイレクトメッセージを送信することを許可する」のチェックボックスをオフにします。
お役に立てば幸いです!