Just find the reason:
the error lies in the “posts_per_page=5” parameter. My blog “reading “settings was setting at “6” post per page. Once I change to 5, the problem is gone.
Now I am wondering how was this query code preserved through entire blog. It seems to me that the code only show up at index page, not in the archvie.php, which is actually generating the “page”s. Is that “$page” a global variant?
I am pretty new to php, sorry to be no naive…
Update:
I just changed blog “reading” “show at most” pages back to 6, no problem happens. Well, maybe it’s because of my WP-supercache plugin … or maybe it’s just magic. Whatever, everything works fine now.