Assolutamente non testato, provalo e vedi se va e cosa restituisce.
Magari si può fare qualcosa di meglio, al momento altro non mi viene 
Codice PHP:
//Print individual page number links
echo "{$prevpage} [";
$i = 1;
$pagina = (!empty($_GET['page'])) ? $_GET['page'] : '0'; //variabile che recupera il numero della pagina (è uguale a come tu definisci $page)
while($i != $pages+1) {
if ($i != $pagina) //controlla che il numero di pagina sia diverso da $i
{
//Print pages & add coma to all but last page
echo "[url='?{$uri}page={$i}']{$i}[/url]";
if($i != $pages) {echo ", ";}
$i = $i+1;
}
else { //se è uguale a $i omette il link
echo $i;
if($i != $pages) {echo ", ";}
$i = $i+1;
}
}
echo "] {$nextpage}";
?>