A ver, 1º de todo decir que soy nuevo y que además explicadome no es que sea muy bueno, pero esto supongo que será mejor que nada
1º de todo decir que està en wordpress, así que algunas cosillas cambian, pero nada del otro mundo... creo.
Yo te popondria que utilizaras
Javascript.
Mira, yo tengo una funcion que me devuelve una cadena de caracteres que será la paginación.
Código PHP:
function numero_pag_manage(){
global $wpdb;
$n = 0;
$recipients = $wpdb->get_results("select * from " . $wpdb->prefix . "newsletter order by email");
foreach($recipients as $r){
$n++;
}
$numero = $n/50;
if(($n % 50)!=0){
$numero = floor($numero) + 1;
}else{
$numero = floor($numero);
}
$txt = "";
for($i=0;$i<$numero;$i++){
$txt = $txt . ' <a href="javascript:void(limit_users(\''.($i+1).'\'))">' .($i+1). '</a>';
}
return $txt;
}
Como veras llamo a una función (limit_users($n)) que lo único que me hace és darme el rango de valores que yo deseo:
Código PHP:
function limit_users($num){
global $wpdb;
$min = ($num-1)*50;
$max = 50;
$recipients = $wpdb->get_results("select * from " . $wpdb->prefix . "newsletter order by email LIMIT ".$min.",".$max."");
return $recipients;
}
En mi ejemplo se mostraran valores de 50 en 50.
Ahora vamos a la pagina donde quieres que salga la paginacion.
Yo tengo puesto que para que se me muestre la lista de todos los usuarios en el campo de busqueda han de dejarlo vacio i hacer buscar. De ahi pillo una variable por post llamada
a.
Código PHP:
if ($_POST['a'] == 'num')
{
$list = limit_users(newsletter_request('email'));
}
Cita: // esto es javascript
function limit_users(num){
document.getElementById("action").value = "num";
document.getElementById("numero").value = num;
document.getElementById("channel").submit();
}
Código PHP:
$num_pag = numero_pag_manage();
echo '<table class="newsletter-results" border="1" cellspacing="5">';
echo '<tr><th colspan=5 align="center">'.$num_pag.'</th></tr>';
echo '<tr><th><a href="javascript:void(order_users_by_lang(\'email\'))">Email</a></th><th><a href="javascript:void(order_users_by_lang(\'name\'))">Name</a></th><th>' etc etc etc;
con todo esto cuando el usuario clique a la paginacion, por ejemplo del 2, la funcion llamada serà javascript
:void(limit_users('2');
Sé que me he explicado fatal y que lo más seguro es que no lo entiendas, porque hasta a mi me cuesta entenderme
Pero bueno, por lo menos si que te puedo decir que utilices Javascript para eso.
PD: espero que era eso lo que pedias...