I'm creating a shortcode to display the list of users with a particular profile in WordPress.
But I can not enable or display the pagination. I have 25 users on my site and would like to display 5 profile users per page and include the pagination.
I added a new Role student, and multiple custom fields using Advanced Custom Fields for the student profile.
So I need to display a list of students as the appropriate fields. So far so good, the problem is with paging that I could not enable.
Here a example of my code:
add_shortcode('list-users', 'list_users');
function list_users($atts){
global $wpdb;
$args = array(
'blog_id' => '',
'role' => 'student',
'meta_key' => 'pw_user_status', //I'm using the New User Approve Plugin
'meta_value' => 'approved',//If user is denied, he is not appears in the list
'meta_compare' => '',
'meta_query' => array(),
'include' => array(),
'exclude' => array(),
'orderby' => 'display_name',
'order' => 'ASC',
'offset' => '',
'search' => '',
'number' => '2',
'count_total' => true,
'fields' => 'all',
'who' => ''
);
$students = get_users($args);
if(is_user_logged_in()){
$content = "<div id='list-of-users'>";
foreach($students as $student){
$content .= "<li>";
$content .= "<div class=\"edit-profile\">";
if(current_user_can('administrator')){
$link_of_profile_of_user = get_edit_user_link($aluno->ID);
$content .= "<a href=".$link_of_profile_of_user." class=\"edit-profile\">"."Edit this profile"."</a>";
}
$content .= "</div>";
$content .= get_avatar($student->ID);
$content .= "<span class='item'>Name: </span>" . get_the_author_meta('display_name', $student->ID) . "<br />";
$content .= "<span class='item'>Date of Birth: </span>" . get_the_author_meta('date_of_birth_acf_student', $student->ID) . "<br />";
$content .= "<span class='item'>Course: </span>" . get_the_author_meta('course_acf_student', $aluno->ID) . "<br />"
$content .= "<span class='item'>Email: </span>" . get_the_author_meta('user_email', $student->ID) . "<br />";
$content .= "<span class='item'>Phone: </span>" . get_the_author_meta('phone_acf_student', $student->ID) . "<br />";
$content .= "<span class='item'>City: </span>" . get_the_author_meta('city_acf_student', $student->ID) . "<br />";
$content .= "</li>";
}//close foreach
$content .= "</div>";
return $content;
}//close the conditional for user logged
}//close function