2014-06-16 2 views
0

db에서 사용자를 가져오고 user_nicename을 통해 사용자를 가져 오는 쿼리를 변경하려고합니다. 성 (姓)별로 사용자의 순서를 정렬하고 싶습니다. last_name의 메타 데이터 값을 ORDER BY로 변경하려고 시도했지만 작동하지 않았습니다.

global $wpdb; 
$query = "SELECT ID, user_nicename from $wpdb->users ORDER BY user_nicename"; 
$author_ids = $wpdb->get_results($query); 

어떤 조언, 도움을 크게 감상 할 수있다 :

여기에 내가 변경하려고 코드의 현재 비트입니다. 나는 PHP와 학습에 익숙하지 않지만,이 문제로 난처한 상황에 처했다.

많은 감사

답변

1

이 사용자 ORDERBY 자신의 LASTNAME 검색 할 수있게됩니다.

$args = array(
    'meta_key' => 'last_name', 
); 

$wp_user_query = new WP_User_Query($args); 
$wp_user_query->query_orderby = str_replace('user_login', 'wp_usermeta.meta_value', $wp_user_query->query_orderby); 
$wp_user_query->query(); 

$users = $wp_user_query->get_results(); 
+0

답장을 보내 주셔서 감사합니다. 내가이 코드를 어디에 두어야할까요? 기존의 3 가지 코드를 대체합니까? – user1384107

+0

표시하려는 위치에서 사용하십시오. $ users는 배열/객체의 사용자 목록으로 구성됩니다. print_r ($ users)을 사용하여 실제로 $ 사용자가 무엇을 구성하는지 알 수 있습니다. 그런 다음 그에 따라 프로그래밍 할 수 있습니다 –

관련 문제