※ 원활한 사이트 이용을 위해 자바스크립트 사용을 허용해주세요.

관리자 > 사용자 목록에 원하는 컬럼(Column) 추가하기

관리자의 사용자 페이지에 원하는 Column(이하 컬럼)을 추가하는 방법에 대해 스크랩 한다.

1. Column 추가

테마의 functions.php 파일에 add_filter를 사용하여 컬럼을 추가한다.

function custom_user_columns( $column ) {
	$column['registered'] = '가입일';
	$column['url']        = '웹사이트';

	return $column;
}
add_filter( 'manage_users_columns', 'custom_user_columns' );

$column['컬럼명(영문)'] = '컬럼라벨'; 처럼 사용하여 더 많은 컬럼을 추가할 수 있다.

2. Column 내용 추가

1번에서 추가한 컬럼에 표시할 내용을 추가한다.

function custom_user_columns_row( $val, $column_name, $user_id ) {
	switch ( $column_name ) {
		case 'registered':
			return get_the_author_meta( 'user_registered', $user_id );
		break;

		case 'url':
			return '<a href="'.get_the_author_meta( 'user_url', $user_id ).'" target="_blank">'.get_the_author_meta( 'user_url', $user_id ).'</a>';
		break;

		default:
	}
	return $val;
}
add_filter( 'manage_users_custom_column', 'custom_user_columns_row', 10, 3 );

Switch안에 case를 사용하여 컬럼의 내용을 추가할 수 있다.
case 명은 1번에서 지정한 컬럼명을 사용하면 된다.

3. 전체 소스

/**
 * 관리자 > 사용자 목록 테이블에 column 추가하기
 * https://wordpress.stackexchange.com/questions/160422/add-custom-column-to-users-admin-panel
 */
function custom_user_columns( $column ) {
	$column['registered'] = '가입일';
	$column['url']        = '웹사이트';

	return $column;
}
add_filter( 'manage_users_columns', 'custom_user_columns' );

function custom_user_columns_row( $val, $column_name, $user_id ) {
	switch ( $column_name ) {
		case 'registered':
			return get_the_author_meta( 'user_registered', $user_id );
		break;

		case 'url':
			return '<a href="'.get_the_author_meta( 'user_url', $user_id ).'" target="_blank">'.get_the_author_meta( 'user_url', $user_id ).'</a>';
		break;

		default:
	}
	return $val;
}
add_filter( 'manage_users_custom_column', 'custom_user_columns_row', 10, 3 );
사용자 목록
사용자 목록에 추가된 custom columns

참고자료

  1. https://wordpress.stackexchange.com/questions/160422/add-custom-column-to-users-admin-panel

댓글 기능 준비중입니다.

게시글에 문제가 있다면 자유게시판에 남겨주세요.
감사합니다.