Ich möchte das Feld "Firmenname" zur Seite "Neuen Benutzer hinzufügen" im Admin-Bereich hinzufügen. Ich habe ziemlich viel gesucht und konnte keine Details dazu finden. Ich kann einfach Informationen zur Profilseite hinzufügen und mich bei ... registrieren.
function my_custom_userfields( $contactmethods ) {
//Adds customer contact details
$contactmethods['company_name'] = 'Company Name';
return $contactmethods;
}
add_filter('user_contactmethods','my_custom_userfields',10,1);
Aber keine Würfel auf irgendetwas anderem.
Antworten:
user_new_form
ist der Haken, der hier die Magie machen kann.Weitere Informationen finden Sie in meinem Blog: http://scriptbaker.com/adding-custom-fields-to-wordpress-user-profile-and-add-new-user-page/
quelle
Ich hatte das gleiche Bedürfnis und erstellte den folgenden Hack:
quelle
user_new_form
Aktion?Sie müssen 2 Dinge tun.
Hinweis: Das folgende Beispiel funktioniert nur für die
administrator
Benutzerrolle.1. Felder registrieren
Für Add New User Verwendung Aktion
user_new_form
Verwenden Sie für Benutzerprofile Aktionen
show_user_profile
,edit_user_profile
Felder registrieren
2. Felder speichern
Für Add New User Verwendung Aktion
user_register
Verwenden Sie für Benutzerprofile Aktionen
personal_options_update
,edit_user_profile_update
Felder speichern Snippet:
Vollständiges Code-Snippet:
quelle
Ich Problemumgehung ist verfügbar, indem Sie das verwenden,
user_new_form_tag
das sich in demuser-new.php
Formularstarttag der Seite befindet. Wenn Sie anschließend HTML ausgeben, müssen Sie am Ende nur mit der Ausgabe beginnen>
und den zuletzt ausgegebenen>
eigenen Code entfernen . Wie in:Die
user_new_form_tag
befindet sich in deruser-new.php
Nähe von Zeile 303 (mindestens in WP3.5.1):Der Nachteil hierbei ist natürlich, dass alle benutzerdefinierten Felder zuerst im Formular angezeigt werden müssen, bevor die in WP Core deklarierten Felder angezeigt werden.
quelle
Die Haken sind wichtig, egal wie wir Formularfelder innerhalb der Funktion sortieren. Folgen Sie meinen Inline-Kommentaren. Ab WordPress 4.2.2 haben wir jetzt viele Hooks:
quelle
user_contactmethods
Der Filter-Hook wird auf deruser-new.php
Seite nicht aufgerufen, sodass er nicht funktioniert. Wenn Sie sich die Quelle ansehen, werden Sie feststellen, dass es keinen Hook gibt, mit dem Sie dem Formular zum Hinzufügen neuer Benutzer zusätzliche Felder hinzufügen können.Dies kann also nur durch Ändern der Kerndateien (BIG NO NO) oder Hinzufügen der Felder mit JavaScript oder jQuery und Abfangen der Felder erfolgen.
oder Sie können ein Ticket im Trac erstellen
quelle
Der folgende Code zeigt "Biografische Informationen" im Formular "Benutzer hinzufügen" an
quelle
Dazu müssen Sie die user-new.php-Seite manuell ändern. Es ist nicht die richtige Art, damit umzugehen, aber wenn Sie dringend Hilfe benötigen, gehen Sie wie folgt vor.
Ich fügte hinzu
Ich habe die Informationen auch zu functions.php hinzugefügt
quelle
Dies funktioniert nicht für die Seite zum Hinzufügen neuer Benutzer. Wenn Sie dies jedoch auf der Seite "Ihr Profil" tun möchten (auf der Benutzer ihr Profil bearbeiten können), können Sie dies in functions.php versuchen:
quelle