Paging API tries to provide an intelligent paging system, that let's you browse through nodes (via previous - next links) after going to a node detail page from within a node overview.
Currently, the module provides support for Views & Apache Solr.
Usage scenario:
- A user browse a list of news items in a View, or is presented a list of search results through Apache Solr
- He clicks one of the items that interests him, and goes to it's node detail page
- On that node page he sees a previous and next link that lets him browse the previous/next news item, search result, ...
Architecture:
This module tries to avoid the performance problems that would generally arise when you try to find out where in the result set of nodes a particular node is situated, in order to find the preceding and following node ID.
How this is (attempted to be) solved here:
If a context is reached where we want to use the Paging API (a View, Apachesolr search results page, ...), the module creates a fingerprint for that context, through hashing the important state info (e.g. Views arguments & filters, Apache Solr filters, sorting, keywords, ...).
At that point we store the set of node IDs that resulted from that page (e.g. first 10 nodes that are being displayed on page 1 of the View) in a cache table.