Moin,
du könntest z.B. den maximalen Wert berechnen und den als Letzte Seite angeben, ebenso wie die Minimalen als Startwert, der ändert sich ja eigentlich nicht. Ansonsten wird sich die Blätterfunktion ja auch an der Seite orientieren (z.B. Seite 16) - warum machst du es nicht einfach so, dass du von der Seitenzahl +3 bzw. -3 abziehst und so z.B. auf 7 angezeigte Links kommst.
Ich muss allerdings zugeben, dass ich es noch nicht wirklich ausprobiert habe, aber zumindest würde mir das so am effektivsten erscheinen.
Also im Prinzip
PHP-Code:
[url="?page=$seitenzahl-1"]vorherige[/url]
[url="?page=$seitenzahl"]jetzige[/url]
[url="?page=$seitenzahl+1"]weitere[/url]
[url="?page=$seitenanzahl+4"]...[/url]
Natürlich ist das Ganze noch ausbaufähig und sollte mit ein paar Kontrollstrukturen ergänzt werden, sollte aber genügen ...
MfG
myPages