E-Mail ist jetzt ein im Kern enthaltenes Feld, aber die Standard-E-Mail für Benutzer scheint auf privat gesetzt zu sein. Nur Benutzer mit Administratorrechten oder der Benutzer selbst können sehen.
Ich möchte anderen Benutzern erlauben, dieses grundlegende Feld zu sehen, ohne ein weiteres E-Mail-Feld erstellen zu müssen, in das jemand die Informationen von den anderen kopieren muss, damit sie sichtbar sind.
Dies sollte eine ziemlich einfache / übliche Praxis sein, aber ich kann noch nichts finden.
Wie erlaube ich regulären Nicht-Administrator-Benutzern, die E-Mails anderer Benutzer anzuzeigen?
Antworten:
Ich hatte einen ähnlichen Anwendungsfall. Hier ist eine weitere Lösung: Ich habe den Benutzerprofilen ein neues E-Mail-Feld hinzugefügt und in einem benutzerdefinierten Modul (dies ist Drupal v8.1) die Option "
hook_user_presave
Siehe Drupal- API" verwendet :function MYMODULE_user_presave(User $user){ $user->set('field_profile_email', $user->getEmail()); }
Anschließend können Sie dieses neue Feld in Ansichten verwenden, z. B. in einer Abteilungskontaktliste, wie in einem Kommentar zur Frage erwähnt. Sie können auch Feldberechtigungen verwenden , um dies weiter zu verbessern.
Dies hat den Nachteil, dass ein zweites Feld erstellt wird, aber die Funktion vermeidet das manuelle Kopieren und ist jetzt überall verfügbar.
quelle
Eine Möglichkeit besteht darin, Benutzern die Berechtigung zum Anzeigen von Benutzerinformationen zu erteilen und diese Informationen auf der Benutzerprofilseite anzuzeigen.
Überschreiben Sie dazu user.html.twig in Ihrem Thema (kopieren Sie es von core / modules / user / templates / user.html.twig in das Vorlagenverzeichnis Ihres Themas) und fügen Sie die E-Mail über
hook_preprocess_user()
Ihre Datei mytheme.theme in die Vorlage ein ::In diesem Beispiel können Benutzer
{{ mail }}
die E-Mail-Variable in Ihre Benutzerprofilvorlage einfügen.quelle
Es gibt eine D8 Vore-Funktionsanforderung zum Hinzufügen einer Berechtigung zum Anzeigen der E -Mail-Adresse anderer Benutzer: Fügen Sie eine neue Berechtigung zum Anzeigen des Benutzer-E-Mail-Felds [# 2799049] \ | hinzu Drupal.org
quelle