Mon site Wordpress affiche actuellement les informations d'identification des utilisateurs par leur prénom et leur nom.
La grande majorité préfère être connue sous son nom d'utilisateur. J'ai demandé comment modifier leur "Nom d'affichage publiquement en tant que" manuellement (c'est-à-dire via leurs paramètres utilisateur), mais cela est loin d'être idéal.
Je voudrais que les nouveaux utilisateurs soient automatiquement indiqués par défaut par leurs noms d'utilisateur. Notez que je souhaite que cela soit reflété dans plusieurs plugins qui font référence à la propriété "Afficher le nom publiquement en tant que".
Comment cela peut-il être fait?
Si vous le souhaitez pour tous les futurs utilisateurs, connectez-vous à l'événement user_register
et mettez-le à jour.
Tirez le WP_User
en utilisant get_userdata
et wp_update_user
info avec le nouveau nom d'affichage.
add_action( 'user_register', 'wpse_20160110_user_register', 10, 1 );
function wpse_20160110_user_register ( $user_id ) {
// get the user data
$user_info = get_userdata( $user_id );
// pick our default display name
$display_publicly_as = $user_info->user_login;
// update the display name
wp_update_user( array ('ID' => $user_id, 'display_name' => $display_publicly_as));
}
Si vous souhaitez définir chaque connexion, raccrochez wp_login
avec PHP_INT_MAX
.
function wpse_20160110_wp_login ( $user_login, $user ) {
wp_update_user(array('ID' => $user->ID, 'display_name' => $user_login));
}
add_action('wp_login', 'wpse_20160110_wp_login', PHP_INT_MAX, 2);