Die Kontaktinfo in der Profildarstellung von WordPress ist sicherlich nicht jedermanns Geschmack. Spätestens dann, wenn größere Benutzerzahlen verwaltet werden müssen stellt sich die Frage nach der Anpassung. Für 7 Felder habe ich im Folgenden einen Lösungsvorschlag wie die Felder entfernt werden können.
AIM, Yahoo, Jabber und Andere waren für mich Felder welche für meine Benutzer nur störend sind. Das Löschen dieser Kontaktinfo ist durch Aufnahme des folgenden Codeschnipsel in der function.php leicht zu realisieren.
// Benutzerprofile von unnoetigen Kontaktinfos entfernen function hide_profile_fields( $contactmethods ) { unset($contactmethods['aim']); unset($contactmethods['jabber']); unset($contactmethods['yim']); unset($contactmethods[linkedin]); unset($contactmethods[myspace]); unset($contactmethods[soundcloud]); unset($contactmethods[tumblr]); return $contactmethods; } add_filter('user_contactmethods','hide_profile_fields',10,1);
Ich hoffe, der kleine Codeschnipsel hilft!
Hinzufügen von Kontaktinfo
Auch das Hinzufügen weiterer Kontaktinfos ist kein Problem, hier ein Beispiel für das Feld Web-Seite
// Hinzufügen der User Kontaktinfos TWITTER und FACEBOOK function wisch_add_contactmethods($user_contactmethods) { $user_contactmethods['user_website'] = 'Web-Seite'; return $user_contactmethods; } add_filter('user_contactmethods','wisch_add_contactmethods');
Diese Eingriffe in die User-Kontaktinfos sind natürlich auch kombinierbar. Abschließend nun noch die Frage, wie diese Felder gelesen werden können.
Zum Auslesen kann der Template-Tag the_author_meta genutzt werden. Dabei wird in diesem Beispiel die Info via wp_get_current_user zur aktuellen Benutzer-ID ausgelesen.
// User Kontaktinfo Web Seite anzeigen, falls vorhanden $current_user = wp_get_current_user(); if( get_the_author_meta('user_website', $current_user->ID) ) { echo the_author_meta('user_website', $current_user->ID); }
Dabei wird die ID des aktuellen Users übergeben.
Viel Erfolg wünscht Klaus