admin管理员组文章数量:1392002
How can i add user display name drop down menu in frontend? then user can choose preferred display name?
In fact, I used this code answered here: How to edit a user profile on the front end?
submit handler:
if (!empty($_POST['display_name'])) {
update_user_meta($current_user->ID, 'display_name', esc_attr($_POST['display_name']));
}
and form:
<p class="form-display-name">
<label for="display-name"><?php _e('display-name', 'profile');?></label>
<select name="display_name" id="display_name">
<?php
$public_display = array();
$public_display['display_nickname'] = $current_user->nickname;
$public_display['display_username'] = $current_user->user_login;
if ( ! empty( $current_user->first_name ) ) {
$public_display['display_firstname'] = $current_user->first_name;
}
if ( ! empty( $current_user->last_name ) ) {
$public_display['display_lastname'] = $current_user->last_name;
}
if ( ! empty( $current_user->first_name ) && ! empty( $current_user->last_name ) ) {
$public_display['display_firstlast'] = $current_user->first_name . ' ' . $current_user->last_name;
$public_display['display_lastfirst'] = $current_user->last_name . ' ' . $current_user->first_name;
}
if ( ! in_array( $current_user->display_name, $public_display ) ) { // Only add this if it isn't duplicated elsewhere
$public_display = array( 'display_displayname' => $current_user->display_name ) + $public_display;
}
$public_display = array_map( 'trim', $public_display );
$public_display = array_unique( $public_display );
foreach ( $public_display as $id => $item ) {
?>
<option <?php selected( $current_user->display_name, $item ); ?>><?php echo $item; ?></option>
<?php
}
?>
</select>
</p>
本文标签: formsHow can i add user display name drop down menu in frontend
版权声明:本文标题:forms - How can i add user display name drop down menu in frontend? 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1744774941a2624567.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论