[Yanel-dev] Parameters for search results pagination

Mehmet Birgi mehmet.birgi at wyona.com
Mon Jul 12 14:47:40 CEST 2010


As discussed with Michi offline, we would like to mimic the search
results pagination of Google for the Yanel search results, if this is
feasible. So I had a look at how Google displays the results:

Google displays 10 results per page as a default, this can be changed
in the setting to the values "10, 20, 30 , 50, 100".

Here is what Google displays on the bottom of the page after the first
search and consecutive clicks on "Next" (with the current page in
*bold*):

1)                                   *1* 2 3 4 5 6 7 8 9 10 Next
2)                        Previous 1 *2* 3 4 5 6 7 8 9 10 11 Next
3)                      Previous 1 2 *3* 4 5 6 7 8 9 10 11 12 Next
4)                    Previous 1 2 3 *4* 5 6 7 8 9 10 11 12 13 Next
5)                  Previous 1 2 3 4 *5* 6 7 8 9 10 11 12 13 14 Next
6)                Previous 1 2 3 4 5 *6* 7 8 9 10 11 12 13 14 15 Next
7)              Previous 1 2 3 4 5 6 *7* 8 9 10 11 12 13 14 15 16 Next
8)            Previous 1 2 3 4 5 6 7 *8* 9 10 11 12 13 14 15 16 17 Next
9)          Previous 1 2 3 4 5 6 7 8 *9* 10 11 12 13 14 15 16 17 18 Next
10)       Previous 1 2 3 4 5 6 7 8 9 *10* 11 12 13 14 15 16 17 18 19 Next
11)    Previous 1 2 3 4 5 6 7 8 9 10 *11* 12 13 14 15 16 17 18 19 20 Next
12)   Previous 2 3 4 5 6 7 8 9 10 11 *12* 13 14 15 16 17 18 19 20 21 Next
13)  Previous 3 4 5 6 7 8 9 10 11 12 *13* 14 15 16 17 18 19 20 21 22 Next
14) Previous 4 5 6 7 8 9 10 11 12 13 *14* 15 16 17 18 19 20 21 22 23 Next

So, what Google is doing seems to be this:

1. Display link "Previous" if there is a previous page
2. Display links to up to 10 previous pages
3. Display the current page number in bold
4. Display links to up to 9 next pages
5. Display link "Next" if there is a next page

To parametrize this behaviour, 2 parameters would be needed:

* Number of entries to be displayed on a page (Google defaults to 10)

* Number of pages to be linked to directly (Google always displays 20
page numbers in the bottom, provided there are at least 20 pages of
results; of those, the 10 previous and the 9 next pages are linked to)

I suggest that we make both numbers configurable, while we set 10
resp. 20 as defaults (like Google).

This pagination feature can only work if the XSLT displaying these
results supports the handling of the necessary parameters, so for
backwards compatibility, the pagination feature will be disabled if
none of thos parameters is supplied.

If there are no objections to those design decisions, I will start the
implementation in this direction.

Cheers,

Memo



-- 
Mehmet Birgi
www.wyona.com


More information about the Yanel-development mailing list