Pagination loses filters
Symptom
Filtering works on page 1, but clicking page 2 (or Next) shows unfiltered results, resets selections, or drops some active filters.
How pagination should work
When URL sync is enabled, active filters and the current page are reflected in the URL. Pagination links should preserve filter parameters so each page request includes the same facet state.
Pagination clicks should trigger an AJAX update—not a full navigation that ignores query arguments.
Fixes
Enable URL sync
- Open Filter Posts or global WPEnhanced Ajax Filter Blocks settings.
- Enable URL sync / Shareable filters.
- Test: apply a filter, go to page 2, confirm the URL still contains filter parameters.
See URL sync and shareable filters.
Avoid theme pagination overriding the loop
Some themes replace loop pagination with their own links that omit filter query args.
- Use pagination rendered by the Archive Loop block, not a separate theme query.
- Disable duplicate product loops on WooCommerce shop pages.
Cache serving page 1 HTML for all pages
Aggressive full-page cache may serve the same HTML for /shop/page/2/ regardless of filters.
- Exclude filter pages or vary cache by query string
- See Caching and performance
Load More / infinite scroll (Pro)
Standard pagination behaves differently from Load More or infinite scroll. If you use Pro load-more modes, confirm pagination settings in the Archive Loop block. See Load More and infinite scroll (Pro).
Test procedure
- Apply a category filter with many results (multiple pages).
- Note the URL query string.
- Click page 2.
- Confirm: same filter active, URL retains params, results are page 2 of filtered results.
What's next
- URL sync and shareable filters — Bookmarkable filter state
- Grid, masonry, and pagination — Loop pagination settings
- Stale or wrong results — Wrong items on paginated views