Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Translated term slug on multisite #11439

Open
tobinski opened this issue Feb 11, 2025 · 0 comments
Open

Translated term slug on multisite #11439

tobinski opened this issue Feb 11, 2025 · 0 comments

Comments

@tobinski
Copy link

Bug description

I have a fresh install of statamic with two sites configured. I have a taxonomy tags with translatable slugs. I created a tag test with a translation test-fr. I switch over to a collection and start filtering by the translated tag test-fr. This results in a 500er error Error: Call to a member function title() on null

How to reproduce

  1. Install a fresh statamic
  2. Configure multisite
  3. Add a taxonomy tags
  4. Configure the slug in the blueprint to be localize: true
  5. Add a test term with a translated slug
  6. Enable the taxonomy tags on a collection
  7. Try to filter by the translated term

Logs

[2025-02-11 09:52:11] local.ERROR: Call to a member function title() on null {"userId":"ba0f33d3-4a3c-421e-988a-1cda2b4ae23a","exception":"[object] (Error(code: 0): Call to a member function title() on null at /test/vendor/statamic/cms/src/Query/Scopes/Filters/Fields/Terms.php:34)
[stacktrace]
#0 /test/vendor/statamic/cms/src/Query/Scopes/Filters/Fields.php(59): Statamic\\Query\\Scopes\\Filters\\Fields\\Terms->badge()
#1 [internal function]: Statamic\\Query\\Scopes\\Filters\\Fields->Statamic\\Query\\Scopes\\Filters\\{closure}()
#2 /test/vendor/laravel/framework/src/Illuminate/Collections/Arr.php(609): array_map()
#3 /test/vendor/laravel/framework/src/Illuminate/Collections/Collection.php(799): Illuminate\\Support\\Arr::map()
#4 /test/vendor/statamic/cms/src/Query/Scopes/Filters/Fields.php(55): Illuminate\\Support\\Collection->map()
#5 /test/vendor/statamic/cms/src/Query/Scopes/Filters/Concerns/QueriesFilters.php(31): Statamic\\Query\\Scopes\\Filters\\Fields->badge()
#6 /test/vendor/laravel/framework/src/Illuminate/Collections/Arr.php(636): Statamic\\Http\\Controllers\\CP\\Collections\\EntriesController->Statamic\\Query\\Scopes\\Filters\\Concerns\\{closure}()
#7 /test/vendor/laravel/framework/src/Illuminate/Collections/Collection.php(847): Illuminate\\Support\\Arr::mapWithKeys()
#8 /test/vendor/statamic/cms/src/Query/Scopes/Filters/Concerns/QueriesFilters.php(30): Illuminate\\Support\\Collection->mapWithKeys()
#9 /test/vendor/statamic/cms/src/Http/Controllers/CP/Collections/EntriesController.php(36): Statamic\\Http\\Controllers\\CP\\Collections\\EntriesController->queryFilters()
#10 /test/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): Statamic\\Http\\Controllers\\CP\\Collections\\EntriesController->index()
#11 /test/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(44): Illuminate\\Routing\\Controller->callAction()
#12 /test/vendor/laravel/framework/src/Illuminate/Routing/Route.php(266): Illuminate\\Routing\\ControllerDispatcher->dispatch()
#13 /test/vendor/laravel/framework/src/Illuminate/Routing/Route.php(212): Illuminate\\Routing\\Route->runController()
#14 /test/vendor/laravel/framework/src/Illuminate/Routing/Router.php(808): Illuminate\\Routing\\Route->run()
#15 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(170): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#16 /test/vendor/statamic/cms/src/Http/Middleware/DeleteTemporaryFileUploads.php(18): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#17 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Statamic\\Http\\Middleware\\DeleteTemporaryFileUploads->handle()
#18 /test/vendor/statamic/cms/src/Http/Middleware/CP/AddVaryHeaderToResponse.php(11): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#19 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Statamic\\Http\\Middleware\\CP\\AddVaryHeaderToResponse->handle()
#20 /test/vendor/statamic/cms/src/Http/Middleware/CP/CountUsers.php(18): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#21 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Statamic\\Http\\Middleware\\CP\\CountUsers->handle()
#22 /test/vendor/statamic/cms/src/Http/Middleware/CP/BootUtilities.php(14): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#23 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Statamic\\Http\\Middleware\\CP\\BootUtilities->handle()
#24 /test/vendor/statamic/cms/src/Http/Middleware/CP/BootPreferences.php(14): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#25 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Statamic\\Http\\Middleware\\CP\\BootPreferences->handle()
#26 /test/vendor/statamic/cms/src/Http/Middleware/CP/BootPermissions.php(14): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#27 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Statamic\\Http\\Middleware\\CP\\BootPermissions->handle()
#28 /test/vendor/statamic/cms/src/Http/Middleware/CP/SelectedSite.php(15): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#29 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Statamic\\Http\\Middleware\\CP\\SelectedSite->handle()
#30 /test/vendor/statamic/cms/src/Http/Middleware/CP/Localize.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#31 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Statamic\\Http\\Middleware\\CP\\Localize->handle()
#32 /test/vendor/statamic/cms/src/Http/Middleware/CP/Authorize.php(25): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#33 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Statamic\\Http\\Middleware\\CP\\Authorize->handle()
#34 /test/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#35 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#36 /test/vendor/statamic/cms/src/Http/Middleware/CP/AddToasts.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Statamic\\Http\\Middleware\\CP\\AddToasts->handle()
#38 /test/vendor/statamic/cms/src/Http/Middleware/CP/AuthGuard.php(14): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#39 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Statamic\\Http\\Middleware\\CP\\AuthGuard->handle()
#40 /test/vendor/statamic/cms/src/Http/Middleware/CP/ContactOutpost.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#41 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Statamic\\Http\\Middleware\\CP\\ContactOutpost->handle()
#42 /test/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(51): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#43 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#44 /test/vendor/laravel/framework/src/Illuminate/Session/Middleware/AuthenticateSession.php(67): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#45 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Illuminate\\Session\\Middleware\\AuthenticateSession->handle()
#46 /test/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(88): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#47 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#48 /test/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(49): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#49 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#50 /test/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(121): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#51 /test/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(64): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#52 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Illuminate\\Session\\Middleware\\StartSession->handle()
#53 /test/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(37): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#55 /test/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(75): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#57 /test/vendor/statamic/cms/src/Http/Middleware/SwapExceptionHandler.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Statamic\\Http\\Middleware\\SwapExceptionHandler->handle()
#59 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(127): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /test/vendor/laravel/framework/src/Illuminate/Routing/Router.php(807): Illuminate\\Pipeline\\Pipeline->then()
#61 /test/vendor/laravel/framework/src/Illuminate/Routing/Router.php(786): Illuminate\\Routing\\Router->runRouteWithinStack()
#62 /test/vendor/laravel/framework/src/Illuminate/Routing/Router.php(750): Illuminate\\Routing\\Router->runRoute()
#63 /test/vendor/laravel/framework/src/Illuminate/Routing/Router.php(739): Illuminate\\Routing\\Router->dispatchToRoute()
#64 /test/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(201): Illuminate\\Routing\\Router->dispatch()
#65 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(170): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#66 /test/vendor/statamic/cms/src/Http/Middleware/StopImpersonating.php(12): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#67 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Statamic\\Http\\Middleware\\StopImpersonating->handle()
#68 /test/vendor/statamic/cms/src/Http/Middleware/DisableFloc.php(17): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#69 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Statamic\\Http\\Middleware\\DisableFloc->handle()
#70 /test/vendor/statamic/cms/src/Http/Middleware/CheckMultisite.php(15): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#71 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Statamic\\Http\\Middleware\\CheckMultisite->handle()
#72 /test/vendor/statamic/cms/src/Http/Middleware/CheckComposerJsonScripts.php(14): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#73 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Statamic\\Http\\Middleware\\CheckComposerJsonScripts->handle()
#74 /test/vendor/statamic/cms/src/Http/Middleware/PoweredByHeader.php(18): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#75 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Statamic\\Http\\Middleware\\PoweredByHeader->handle()
#76 /test/vendor/barryvdh/laravel-debugbar/src/Middleware/InjectDebugbar.php(59): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#77 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Barryvdh\\Debugbar\\Middleware\\InjectDebugbar->handle()
#78 /test/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#79 /test/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#80 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#81 /test/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(47): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#82 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#83 /test/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#84 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#85 /test/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(110): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#86 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#87 /test/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(49): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#88 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Illuminate\\Http\\Middleware\\HandleCors->handle()
#89 /test/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#90 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#91 /test/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#92 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#93 /test/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(127): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#94 /test/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(176): Illuminate\\Pipeline\\Pipeline->then()
#95 /test/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(145): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#96 /test/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1216): Illuminate\\Foundation\\Http\\Kernel->handle()
#97 /test/public/index.php(17): Illuminate\\Foundation\\Application->handleRequest()
#98 /test/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('...')
#99 {main}
"}

Environment

Environment
Application Name: Statamic
Laravel Version: 11.41.3
PHP Version: 8.3.6
Composer Version: 2.7.1
Environment: local
Debug Mode: ENABLED
URL: test.test
Maintenance Mode: OFF
Timezone: UTC
Locale: en

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

Drivers
Broadcasting: log
Cache: file
Database: sqlite
Logs: stack / single
Mail: log
Queue: sync
Session: file

Statamic
Addons: 0
Sites: 2 (Statamic, test fr)
Stache Watcher: Enabled (auto)
Static Caching: Disabled
Version: 5.46.1 PRO

Installation

Fresh statamic/statamic site via CLI

Additional details

No response

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants