ユーザー一覧に次の項目を表示します。
・部署・氏名
・ID
・user_nicename、ニックネーム、ブログ上の表示名
・HTML編集可否
氏名は、姓名で表示します。
メールアドレスは、スペースの関係で非表示です。
user_nicename、ニックネーム、ブログ上の表示名は、閲覧画面に表示されます。これらは、デフォルトでは、ログイン名になります。ログイン名が、閲覧画面に表示されるのは危険です。セキュリティーの観点から、user_nicename、ニックネーム、ブログ上の表示名がログイン名になっていないか確認できます。
部署、HTML編集可否は、ユーザー新規追加とユーザーの編集を別途カスタマイズして入力します。
処理は、表示項目設定、ソート属性設定、表示の順で行います。
コード
// -------------------------------- // ユーザー一覧 表示項目設定 // 氏名、ID、user_nicename、ニックネーム、ブログ上の表示名、HTML可否 // -------------------------------- function hk_functions_manage_users_columns( $users_columns ) { $new_users_columns = array(); foreach ( $users_columns as $id => $name ) { if ( $id == 'name' ) { $new_users_columns['hk_functions_name'] = '部署<br />氏名'; $new_users_columns['hk_functions_id'] = 'ID'; $new_users_columns['hk_functions_nickname'] = 'user_nicename<br />ニックネーム<br />ブログ上の表示名'; $new_users_columns['hk_functions_html'] = 'HTML'; } else if ( $id == 'email' ) continue; else $new_users_columns[ $id ] = $name; } unset( $id ); unset( $name ); return $new_users_columns; } add_filter( 'manage_users_columns', 'hk_functions_manage_users_columns' ); // -------------------------------- // ユーザー一覧 ソート属性設定 // -------------------------------- function hk_functions_manage_users_sortable_columns( $sortable_columns ) { $sortable_columns['hk_functions_id'] = 'ID'; return $sortable_columns; } add_filter( 'manage_users_sortable_columns', 'hk_functions_manage_users_sortable_columns' ); // -------------------------------- // ユーザー一覧 表示 // 氏名、ID、user_nicename、ニックネーム、ブログ上の表示名、HTML可否 // -------------------------------- function hk_functions_manage_users_custom_column( $output, $column_name, $user_id ) { $user_obj = get_userdata( $user_id ); // 部署・氏名 if ( $column_name == 'hk_functions_name' ) { $section = get_user_meta( $user_id, 'hk_section', true ); $section = htmlspecialchars( $section ); $name = $user_obj->last_name.' '.$user_obj->first_name; if ( $section != '' ) $output = $section.'<br />'.$name; else $output = $name; } // ID else if ( $column_name == 'hk_functions_id' ) $output = $user_id; // ニックネーム、ブログ上の表示名 else if ( $column_name == 'hk_functions_nickname' ) { $user_nicename = htmlspecialchars( $user_obj->user_nicename ); $nickname = htmlspecialchars( $user_obj->nickname ); $display_name = htmlspecialchars( $user_obj->display_name ); $output = $user_nicename.'<br />'.$nickname.'<br />'.$display_name; } // HTML else if ( $column_name == 'hk_functions_html' ) { $can_html = get_user_meta( $user_id, 'hk_can_html', true ); if ( $can_html == 'yes' ) $output = '○'; else $output = '×'; } return $output; } add_filter( 'manage_users_custom_column', 'hk_functions_manage_users_custom_column', 10, 3 );
このプログラムをお使いになる場合は、お使いになる方の自己責任でお願いします。