Numbered Pagination for EXT:solr on TYPO3 v14

solr_numbered_pagination swaps the basic next/previous navigation in the EXT:solr search for numbered pages, ported to TYPO3 v14.3 and EXT:solr 14 Alpha with shadcn/ui-compatible CSS classes.

Auf einen Blick

  • Numbered pagination ("1 … 3 4 5 … 12") for EXT:solr, replacing the basic next/previous navigation.
  • Ported to TYPO3 v14.3 and EXT:solr ^14.0@alpha; upstream supported only v12/v13.
  • An event listener swaps the Solr pagination object before the Fluid assignment, so no sitepackage is needed and the partial can be overridden via site settings.
  • shadcn/ui-compatible CSS classes and minimal dependencies in a small, focused fork.

The standard EXT:solr search pagination shows next and previous links: practical, but often not enough for result lists that run to many pages. solr_numbered_pagination replaces this basic navigation with numbered pagination in the style of "1 … 3 4 5 … 12", built on the well-established georgringer/numbered-pagination extension.

This fork of the upstream project by Studio Mitte GmbH ports the extension to TYPO3 v14.3 and EXT:solr 14 Alpha. It is a small, focused fork: a single commit on top of the upstream.


Table of Contents  

Overview

Why numbered pagination is useful for EXT:solr.

What we did

The single commit that defines this fork.

Features in detail

Technical functionality and configuration.

Installation

Composer setup for TYPO3 v14.

Overview  

solr_numbered_pagination is a small TYPO3 extension that gives the EXT:solr search numbered pages instead of simple next/previous navigation. Rather than the usual two links, the navigation shows a compact sequence of page numbers with ellipses, just as you would expect from large search applications.

The upstream project comes from Studio Mitte GmbH and previously supported TYPO3 v12 and v13. The release of TYPO3 v14.3 LTS and the alpha line of EXT:solr 14 made a dependency update necessary.

Only for TYPO3 v14

This package requires TYPO3 ^14.3, apache-solr-for-typo3/solr ^14.0@alpha and georgringer/numbered-pagination ^2.2. For TYPO3 v12 or v13, use the upstream package by Studio Mitte GmbH.


What we did  

To be honest, this fork is a single custom commit on top of the upstream: "Add TYPO3 14 Solr pagination support". The composer.json was upgraded to typo3/cms-core: ^14.3 and apache-solr-for-typo3/solr: ^14.0@alpha. The pagination partial was rewritten and now uses shadcn/ui-compatible CSS classes that drop straight into modern TYPO3 frontend projects built with Tailwind/shadcn.

That is all there is to it, and that is exactly how it should be: a focused port to v14 that leaves the upstream logic untouched.


Features in detail  

FeatureBenefit
Numbered paginationDisplays "1 … 3 4 5 … 12" instead of just next/previous links – via georgringer/numbered-pagination.
Event listener approachReplaces the Solr pagination object before Fluid assignment – no intervention in EXT:solr core required.
Solr URL ViewHelperRetains the EXT:solr pagination URL ViewHelper for correct Solr page parameters.
Partial via site settingspartialRootPath can be overridden – a dedicated sitepackage is not strictly necessary.
shadcn/ui CSS classesPagination partial uses shadcn/ui-compatible classes for a consistent appearance in modern projects.
Minimal dependenciesOnly EXT:solr, numbered-pagination and TYPO3 core – no additional sitepackage required.

The event listener hooks into the rendering process before the pagination object is assigned to Fluid and swaps it for Georg Ringer's NumberedPagination implementation. The EXT:solr-specific pagination URL ViewHelper is kept in place, so the Solr page parameters are generated correctly.


Installation  

Once installed, the standard Solr pagination partial is automatically replaced by the numbered one. To customise the partial, simply override partialRootPath in the site settings; you do not strictly need a dedicated sitepackage for this.


Frequently Asked Questions  


Conclusion  

A small extension for a specific problem: EXT:solr lacks numbered pagination, and this focused fork closes the gap for TYPO3 v14. No over-engineering, no unnecessary dependencies, just a focused port to the current platform.

Acknowledgements

Our thanks go to Studio Mitte GmbH for the excellent solr_numbered_pagination extension and to Georg Ringer for georgringer/numbered-pagination. We use this solution and have extended it for TYPO3 v14.3/EXT:solr 14 with updated dependencies and a new Fluid partial. The bulk of the work comes from Studio Mitte GmbH, and the pagination library comes from Georg Ringer. Both projects are licensed under GPL-2.0-or-later.

Let's talk about your project

Locations

  • Mattersburg
    Johann Nepomuk Bergerstraße 7/2/14
    7210 Mattersburg, Austria
  • Vienna
    Ungargasse 64-66/3/404
    1030 Wien, Austria

Parts of this content were created with the assistance of AI.