Pagination inside nocache always returns page 1 when full static caching ignores query strings
Maintainer antworten meist innerhalb von 1 Tag
Bewertung
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Anfängerfreundlichkeit
- 35/100
Rechercherichtung
Start by tracing the POST /!/nocache request and the pagination resolver that reads the current page; the issue identifies query string removal before that resolver as the failure point. Reproduce with full static caching and ignore_query_strings enabled, then verify that ?page=2 renders page 2 inside the nocache region while the surrounding page uses the same static cache entry. An open linked pull request already addresses this issue.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Bug description
With full-measure static caching enabled and ignore_query_strings set to true, a paginated collection inside a nocache region always renders page 1, even when visiting ?page=2.
The browser correctly passes the original URL, including ?page=2, to POST /!/nocache. However, the query string is removed before the pagination resolver reads the current page.
How to reproduce
- Create a collection named posts containing more than six published entries.
- Enable static caching:
'strategy' => 'full',
'ignore_query_strings' => true,
'nocache' => 'cache', - Add a paginated listing inside a nocache region, for example in Blade:
<statamic:nocache>
<statamic:collection from="posts" paginate="true" limit="6" as="posts">
@foreach ($posts as $post)
<p>{{ $post['title'] }}</p>
@endforeach
<p>Page {{ $paginate['current_page'] }}</p>
</statamic:collection>
</statamic:nocache>
- Clear the static cache and visit the page to populate it.
- Visit the same page with
?page=2. - Wait for the nocache request to finish.
Expected behavior
The nocache region renders page 2, while the surrounding page continues using the same static cache entry.
Actual behavior
The nocache response contains page 1.
Logs
Environment
Environment
Laravel Version: 13.40.0
PHP Version: 8.4.23
Composer Version: 2.10.2
Environment: local
Debug Mode: ENABLED
Maintenance Mode: OFF
Timezone: UTC
Locale: en
Cache
Config: CACHED
Events: CACHED
Routes: CACHED
Views: CACHED
Drivers
Broadcasting: log
Cache: file
Database: mysql
Logs: stack / single
Mail: smtp
Queue: sync
Session: file
Storage
public/storage: NOT LINKED
Livewire
Livewire: v4.4.8
Statamic
Addons: 7
License Key: Not set
Sites: 1
Stache Watcher: Enabled
Static Caching: full
Version: 6.40.0 PRO
Statamic Addons
alt-design/alt-redirect: 1.9.0
aryehraber/statamic-captcha: 1.18.0
marcorieser/statamic-livewire: 5.3.4
Installation
Fresh statamic/statamic site via CLI
Additional details
No response
- Vorherrschende Sprache
- PHP
- Sterne
- 4.9k
- Forks
- 647
- Ø Merge
- 23 Std. 42 Min.
- Gemergte PRs (30 T.)
- 148
Entwicklungsumgebung
Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus statamic/cms
-
tags
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
Maintainer antworten meist innerhalb von 1 Tag
-
accessibility
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
Maintainer antworten meist innerhalb von 1 Tag
-
antlers
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 66/100
Maintainer antworten meist innerhalb von 1 Tag
-
antlers modifiers
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 57/100
statamic/cms#15832 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Multisite: switching site in the collection listing opens a different entry, not the localizationOffenmultisite
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 55/100
Maintainer antworten meist innerhalb von 1 Tag
Ähnliche Issues
-
needs-triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 77/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
Icinga/icinga-notifications-web#645 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
OpenMage/magento-lts#5865 ·
Maintainer antworten meist innerhalb von 3 Tagen
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
neos/flow-development-collection#3655 ·
Maintainer antworten meist innerhalb von 2 Tagen
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
Codeinwp/themeisle-companion#1014 ·
Maintainer antworten meist innerhalb von 1 Tag