Getting Current Locale
The current locale is exposed on pageContext.locale after the plugin resolves the request.
In Vike hooks
function onBeforeRender(pageContext: Vike.PageContext) {
const locale = pageContext.locale
}Through useI18nRoute()
In components, pass pageContext directly:
import { usePageContext } from 'vike-vue/usePageContext'
import { useI18nRoute } from 'vike-i18n-routing'
const { locale, localeMeta } = useI18nRoute(usePageContext())
const localeCurrency = localeMeta?.currencySee useI18nRoute for the full API.
localeDetector
Use localeDetector when locale should be derived from your own app state before fallback detection runs, or when you need to disable specific built-in detection sources.
// +config
i18n: {
localeDetector(pageContext) {
if (pageContext.session?.locale) return pageContext.session.locale
return null
},
}Return a locale code to stop detection.
Return null or undefined to continue with the built-in flow.
You can also pass an object to disable specific built-in sources:
// +config
i18n: {
localeDetector: {
acceptLanguageHeader: false,
localeCookie: false,
queryParams: false,
session: true,
},
}Flags default to true. Setting a flag to false skips that source.
debug
Locale negotiation logging is enabled by default on the dev server. Set debug: true to force it on, or debug: false to force it off.
// +config
i18n: {
debug: true,
}Example output:
[vike-i18n-routing] locale resolved: ru
[vike-i18n-routing] ✗ localeDetector fn -> null
[vike-i18n-routing] ✗ query ?locale -> not present
[vike-i18n-routing] ✓ cookie 'i18n-locale' -> 'ru'Detection order
For requests without an explicit locale prefix, locale resolution checks:
localeDetector(pageContext)iflocaleDetectoris a function- query
localeunlesslocaleDetector.queryParams === false - query
langunlesslocaleDetector.queryParams === false - locale cookie unless
localeDetector.localeCookie === false session.localeunlesslocaleDetector.session === falseAccept-LanguageunlesslocaleDetector.acceptLanguageHeader === falsedefaultLocale
Next: Usage On Client