ecco quello che ho fatto io CHE NON FUNZIONA CORRETTAMENTE
Codice PHP:
function generate_comments_pages_list($permalink,$ncomm,$actual)
{
//$ncomm è il numero totale di commenti
//$actual è il primo commento stampato nella pagina (da 0 a $ncomm-1)
global $comments_per_page;
$npage=ceil(($ncomm)/$comments_per_page); //cerco di calcolare un numero totale di pagine
$page=ceil($actual/$comments_per_page); //cerco di calcolare la pagina in cui mi trovo a seconda del primo commento della pagina
//cavolatine varie :)
$first="<<";
$prev="<";
$next=">";
$last=">>";
$list="";
//se mi trovo alla pagina zero, non stampare << e <
if ($page!=0){
$start="[b][url='".$permalink."&first=0']".$first."[/url][/b] ";
$start.="[b][url='".$permalink."&first=".(($page-1)*$comments_per_page)."']".$prev."[/url][/b] ";}
//se mi trovo all'ultima pagina, non stampare > e >>
if ($page!=$npage){
$finish="[b][url='".$permalink."&first=".(($page+1)*$comments_per_page)."']".$next."[/url][/b] ";
$finish.="[b][url='".$permalink."&first=".($ncomm-$comments_per_page)."']".$last."[/url][/b] ";}
//stampo la lista delle pagine
for ($i=0;$i<$npage;$i++)
//stampa la pagina attuale senza collegamento
if ($i==$page) $list.=($i+1)." ";
else $list.="[b][url='".$permalink."&first=".($i*$comments_per_page)."']".($i+1)."[/url][/b] ";
//monta la lista
return $start.$list.$finish;
}