우커머스로 쇼핑몰을 운영 시 유저 리스트에 운영에 필요한 컬럼들을 추가하고, 일부는 검색이 되도록 해 달라는 요청이 몇차례 있어서 최대한 간단한 방법으로 조치가 가능하도록 정리를 해 보았습니다. 필요하신 경우 한 번 응용을 해 보세요.

1. 어드민 유저 리스트에 컬럼을 추가하는 방법 

플러그인 없이 functions,.php에 코드 추가로 모든 요청 내용이 처리가 가능하였지만, 그보다 서로 다른 상황에 따라 일일이 수정을 하기 보다는 전 admin column (free) 이라는 플러그인으로 간단하게 컬럼을 추가하는 방법을 주로 이용 중입니다.

(△ 기본 메타들은 선택만 하면 끝. 없는 메타정보는 커스텀 필드로 마음대로 추가 가능 ▽)

 

2.  추가된 ‘가입일’ 컬럼을 정렬이 가능한 컬럼으로 변경 

( ※ 참고로 admin column pro 에는 컬럼 추가 시 이미 정렬가능토록 하는 옵션 외 다양한 기능이 제공됩니다. )

2-1) 유저 리스트에서 admin-column으로 추가한 컬럼의 th 태그 아이디를 확인합니다. 

( 컬럼 아이디가 플러그인에 의해 임의로 생성이 되다 보니 난수값 같은 것으로 표시 )

2-2) functions.php에 해당 컬럼을 소트 가능한 컬럼으로 등록합니다.   

가입일 컬럼이 정렬 가능하도록 변경이 되면 OK.

 

3. 추가된 이름(first_name) 컬럼도 유저 검색에 포함시키기 

워드프레스에서 제공하는 pre_user_query 훅을 이용해서 검색 키워드를 추가합니다.  (https://developer.wordpress.org/reference/hooks/pre_user_query/)

유저 리스트에서 이름 검색 결과 유저가 검색되면 OK

 

상황에 따라 전화번호나 기타 메타 정보를 컬럼에 추가하는 경우도 위 방법으로 뚝딱 적용이 가능합니다.

 

끝.

2 Comments

  1. Sean Kim

    안녕하세요. 좋은정보 너무 감사합니다.

    알려주신 ” 2-2) functions.php에 해당 컬럼을 소트 가능한 컬럼으로 등록합니다. ” 의 코드를 알려주신 방법으로 제 코드로 변경하여 진행을 했는데 계속 애러가 뜨는데, 제가 초보라 뭘 잘못했는지를 도저히 찾을수가 없습니다. 제가 add한 코드는

    add_filter( ‘manage_users_sortable_columns’, ‘oks_make_registered_column_sortable’ );
    function oks_make_registered_column_sortable( $columns ) {
    return wp_parse_args( array( ‘5e6aa645a669e’ => ‘registered’ ), $columns );
    }

    입니다. 혹시 제가 더 수정해야하는 부분이 있는지 감히 여쭤봅니다. 감사합니다.

    1. oksambari

      어떤 에러가 발생하는 상황인가요? 사이트가 아예 안 열리는 것이라면 구문 에러가 있는 것이고요. 주로 { } 열고 닫고나 ;를 입력 안 한 경우 쉽게 발생합니다. 다른 특이사항이라면 알려 주세요.
      추가로 핵심은 ‘manage_users_sortable_columns’ 라는 워드프레스의 소트 가능한 컬럼을 만들 수 있는 훅을 이용하는 것입니다. 이 훅을 검색해 보시면 더 정확한 정보 확인도 가능합니다.

답글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다.