Firstly you need to merge your two query into one,
and need to use WP_Query instead of get_posts:
$paged = 1 ;
$posts_per_page = 10 ;
$args = array(
'post_type' => 'espresso_event',
'meta_key' => 'event_start_date',
'orderby' => 'meta_value',
'order' => 'ASC',
'posts_per_page' => $posts_per_page,
'paged' => $paged,
'meta_query' => array(
array(
'key' => 'event_registration_end',
'value' => date('Y-m-d'),
'compare' => '>='
),
array(
'key' => 'event_registration_end',
'value' => date('Y-m-d'),
'compare' => '<='
)
)
) ;
$query = new WP_Query($args) ;
if ($query->have_posts()) {
// Here our parameter:
$total = $query->found_posts ;
while ($query->have_posts()) {
$query->the_post() ;
// Do something like
?><h3><?php the_title() ; ?></h3><?php
}
echo '<div id="pagination">' ;
$next_link = '' ;
$prev_link = '' ;
if ($paged > 1) {
if ($paged-2) {
$prev_link = add_query_arg(array(
'paged' => $paged-1,
),get_permalink($post->id)) ;
} else {
$prev_link = get_permalink($post->id) ;
}
}
if (($total/$posts_per_page) > $paged) {
$next_link = add_query_arg(array(
'paged' => $paged+1,
),get_permalink($post->id)) ;
}
if ($next_link) {
echo '<a href="'.$next_link.'" class="next">Next Page</a>' ;
}
if ($prev_link) {
echo '<a href="'.$prev_link.'" class="prev">Previous Page</a>' ;
}
echo '</div>' ;
} else {
echo 'Sorry, there is no post etc' ;
}
Not tested, but your need must be something like this.