Server-side Processing

Process sorting, filtering, and pagination on the server for faster loading of large tables.

For large tables, the “Table Features for Site Visitors” can be slow, especially when a page is first loaded. The “Server-side Processing” module can move this work to the server, so that tables will be much faster for site visitors.

Feature description

For example, try searching and paging in this very large table — it has more than 32,000 rows. Despite this large number of cells, it’s loading very fast and the visitor can still use it with ease.

buttonYearCountrySportTimeRateFee
Eric1986SwedenSoccer05:2540.4%$7.14
Julia1991GermanyBasketball04:4520.3%$2.90
Adam2002IndonesiaGolf19:4043.3%$4.40
Kim1986ChileBadminton12:5085.7%$3.47
Jackson1998AustraliaBaseball06:0966.7%$6.85
Cade1986IndiaBadminton19:4342.4%$3.22
Keaton2003Costa RicaBasketball10:3140.0%$5.88
Ray1999FranceGymnastics18:0859.5%$1.10
Omar1984BrazilTennis02:5054.2%$2.30
Maite1986NorwayWrestling15:0929.5%$3.91

Automatic reloading

The Server-side Processing feature also supports automatically reloading the table in a configured interval, to ensure that the site visitor sees the latest table data. This can for example be useful to show things like up-to-date scores or results of a race or competition. This example table automatically refreshes every ten seconds, to show a (fictional) competition ranking (with automatic sorting by the “Points” column). Note how the data and time in the last row change automatically every ten seconds.

NameTeamPoints
Alex🟥84
Chris🟨8
Bryce🟩3
Last update:Nov 21, 2024, 7:47:23

Usage instructions

To use these features with your tables, activate the “Server-side Processing” feature module on the “Modules” screen of TablePress Max. Then, configure the desired options in the “Server-side Processing” section on the table’s “Edit” screen.

Configuration parameters

To configure this module’s features, you can also use these configuration parameters in the “TablePress Table” block or in the Shortcode that you are using to embed the table:

ModuleSlugConfiguration parameterNameDescriptionTypeDefault value
Server-side Processingdatatables-serverside-processingdatatables_serverside_processingboolean (true or false)false
Server-side Processingdatatables-serverside-processingdatatables_serverside_processing_cached_pagesinteger0
Server-side Processingdatatables-serverside-processingdatatables_serverside_processing_periodic_refreshinteger0
Server-side Processingdatatables-serverside-processingdatatables_serverside_processing_request_typeenum (GET or POST)GET
Server-side Processingdatatables-serverside-processingdatatables_serverside_processing_html_rowsThis is only a Shortcode parameter, but not part of the user interface. By default, the value of the datatables_paginate_entries value is used.string"" (empty string)