„Nachrichten“- und „Chat“-Schaltflächen auf der eigenen Profilseite des Benutzers

@donaldsoncd Versuchen Sie, diesen Teil zum JS-Tab hinzuzufügen. Er blendet die Schaltflächen nur auf Ihren Benutzerseiten aus. Die Schaltflächen werden auf der Benutzerkarte weiterhin angezeigt.

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";
      }
    }
  });
});

Es ist ein bisschen hacky, aber es erledigt die Arbeit.
Sie können den Teil /u/natedhaliwal durch /u/<username> ersetzen.


Wenn Sie die Möglichkeit, von jemandem eine PM oder eine Chat-Direktnachricht zu erhalten, vollständig entfernen möchten, müssen Sie:

  1. Gehen Sie zu discourse.example.com/my/preferences/users.
  2. Deaktivieren Sie das Kontrollkästchen Anderen Benutzern erlauben, mir persönliche Nachrichten und Chat-Direktnachrichten zu senden.

Ich hoffe, das hilft Ihnen weiter!