努力尋找一種解決方案來強制用戶的名字也是他們的顯示名稱。
我找到了這個。它并不完美,因為它將 FN LN 更改為顯示名稱,我嘗試對其進行編輯,但沒有成功。
add_action ('admin_head','make_display_name_f_name_last_name');
function make_display_name_f_name_last_name(){
$users = get_users(array('fields'=>'all'));
foreach($users as $user){
$user = get_userdata($user->ID);
$display_name = $user->first_name . " " . $user->last_name;
if($display_name!=' ')
wp_update_user( array ('ID' => $user->ID, 'display_name' => $display_name) );
else
wp_update_user( array ('ID' => $user->ID, 'display_name' => $user->display_login) );
if($user->display_name == '')
wp_update_user( array ('ID' => $user->ID, 'display_name' => $user->display_login) );
}
}
uj5u.com熱心網友回復:
您可以將其簡化為
add_action('admin_head', function () {
foreach (get_users(['fields' => 'all']) as $user) {
$userData = get_userdata($user->ID);
wp_update_user(['ID' => $user->ID, 'display_name' => $userData->first_name ?: $user->display_login]);
}
});
甚至更小
add_action('admin_head', fn() => array_reduce(get_users(['fields' => 'all']), fn ($carry, $user) =>
wp_update_user(['ID' => $user->ID, 'display_name' => get_userdata($user->ID)->first_name ?: get_userdata($user->ID)->display_login])
));
更新
display_login
根據vee的評論,答案已更新為回退:
當心!WordPress 中的名字可以為空。使用您當前的代碼,它可以是空的顯示名稱。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/515777.html
標籤:phpWordPress
下一篇:排名數學類別標題