Skip to content

Multisite: linked entries inside Replicator fields use the wrong Blink cache context #14577

@miroslavborecky

Description

@miroslavborecky

Bug description

I’m seeing a multisite localization issue with replicator fields in Statamic v6.
In a localized entry that contains a localized Replicator field, nested link fields inside Replicator sets may resolve to the wrong localized URL because they are augmented using an incorrect localization context. This appears to be caused by the Blink cache key not including the localization context. As a result, entry URLs on the frontend may be generated for the wrong site.

How to reproduce

Prepare a multisite setup.
Create a replicator fieldtype that contains a link fieldtype. Then create an original entry (for example, a page) using that Replicator field, and set the link field value to another entry using entry::....
After that, create a localized version of the page and update the link so that it points to the localized entry. Once the page is saved and rendered on the frontend, the URL resolves to the original entry instead of the localized one.
This appears to happen because the wrong localization context is loaded from the Replicator Blink cache.

Here is a suggested fix that worked for us. FIX

Logs

Environment

Environment
Laravel Version: 13.6.0
PHP Version: 8.4.17
Composer Version: 2.9.7
Environment: local
Debug Mode: ENABLED
Maintenance Mode: OFF
Timezone: UTC
Locale: en

Cache
Config: NOT CACHED
Events: NOT CACHED
Routes: NOT CACHED
Views: CACHED

Drivers
Broadcasting: log
Cache: redis
Database: mariadb
Logs: stack / single
Mail: smtp
Queue: redis
Session: redis

Storage
public/storage: NOT LINKED

Statamic
Addons: 3
Sites: 2 (DE,EN)
Stache Watcher: Enabled (auto)
Static Caching: Disabled
Version: 6.15.0 PRO

Statamic Addons
duncanmcclean/statamic-cargo: 1.5.0
jacksleight/statamic-bard-texstyle: 4.1.0
mitydigital/sitemapamic: 3.5.0

Cargo
Carts: file
Orders: file
Payment Gateways: Stripe

Installation

Fresh statamic/statamic site via CLI

Additional details

No response

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions