Как разбить на страницы функцию get_users? - PullRequest
0 голосов
/ 27 октября 2011

Я использую функцию get_users, чтобы показать пользовательский список пользователей на сайте.Единственная проблема, с которой я сейчас сталкиваюсь, - это как разбить результат на страницы.

Это пример функции, которую я использую:

<ul>
    <?php

    $args = array(
        'meta_key' => 'jabber',
        'meta_value' => 'User Name',
        'meta_compare' => 'LIKE',
        'order' => 'ASC',
        'count_total' => true,
        'fields' => 'all',
      );


    $blogusers = get_users($args_1);
    foreach ($blogusers as $user) {

        $user_id = $user->ID; 
        $user = get_userdata($user_id);

          echo '<li class="provider-list prov-list-gradient">' . $user->display_name . '</li>';

    }
    ?>

    </ul>

Кажется, что неточевидный способ создания нумерации страниц для этой функции.Я был бы признателен за помощь в этом.

ОБНОВЛЕНИЕ:

Это исходный код функции get_users:

function get_users( $args = array() ) {

            $args = wp_parse_args( $args );
            $args['count_total'] = false;

            $user_search = new WP_User_Query($args);

            return (array) $user_search->get_results();
    }

1 Ответ

1 голос
/ 27 октября 2011

Если вы запускаете get_users() перед загрузкой каждой страницы результатов N, вы можете изменить запрос get_users(), чтобы использовать ключевое слово OFFSET в mysql.

Пример псевдозапроса (где P - номер вашей страницы):

SELECT * FROM USERS LIMIT N OFFSET N*P
...