При регистрации пользователь вводит название города, которое записывается в метаданные пользователя. Для вывода города в админке использую следующий код:
# создаем новую колонку
add_filter( 'manage_users_columns', 'test_users_columns', 4 );
function test_users_columns( $columns ){
$columns['test_city'] = 'Город';
return $columns;
}
# заполняем колонку данными
add_filter( 'manage_users_custom_column', 'test_users_custom_column', 5, 3);
function test_users_custom_column( $out, $column_name, $user_id ){
if( 'test_city' === $column_name ) {
return get_user_meta( $user_id, 'test_u_city', true );
}
}
Все работает, но правильно ли я понимаю, что учитывая что зарегистрировано 500 пользователей и в параметрах указано отображать по 500 строк на странице, то при отображении таблицы пользователей будет происходить 500 запросов к БД? Есть ли способ заранее запросить все необходимые мета-поля(я для упрощения указал только город, на самом деле будет несколько) в один запрос?