рдЕрдкрдиреЗ рдкреНрд░рд╢реНрди рдХреЛ рдкреВрдЫреЗрдВ рдФрд░ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХрд╛ рд╕рд╛рд░рд╛рдВрд╢ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ, рдЗрд╕ рдкреГрд╖реНрда рдФрд░ рдЖрдкрдХреЗ рдЪреБрдиреЗ рд╣реБрдП AI рдкреНрд░рджрд╛рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ
рдпрд╣ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдкреБрд░рд╛рдирд╛ рд╣реИ, рдЖрдзрд╛рд░ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдЗрд╕ рддрд┐рдерд┐ рдкрд░ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ 16 рдирд╡рдВрдмрд░ 2025.
рдЕрдВрдЧреНрд░реЗрдЬреА рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдкрд░ рдЬрд╛рдПрдБрд╕рдВрд╕реНрдХрд░рдг рдЗрддрд┐рд╣рд╛рд╕
- "рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЗрддрд┐рд╣рд╛рд╕"v5.5.1029/6/2025
рдЗрд╕ рдкреГрд╖реНрда рдХреА рд╕рд╛рдордЧреНрд░реА рдПрдХ AI рджреНрд╡рд╛рд░рд╛ рдЕрдиреБрд╡рд╛рджрд┐рдд рдХреА рдЧрдИ рд╣реИред
рдЕрдВрдЧреНрд░реЗрдЬреА рдореЗрдВ рдореВрд▓ рд╕рд╛рдордЧреНрд░реА рдХреЗ рдЕрдВрддрд┐рдо рд╕рдВрд╕реНрдХрд░рдг рджреЗрдЦреЗрдВрдЕрдЧрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЗрд╕ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЛ рд╕реБрдзрд╛рд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╡рд┐рдЪрд╛рд░ рд╣реИ, рддреЛ рдХреГрдкрдпрд╛ GitHub рдкрд░ рдПрдХ рдкреБрд▓ рдЕрдиреБрд░реЛрдз рд╕рдмрдорд┐рдЯ рдХрд░рдХреЗ рдпреЛрдЧрджрд╛рди рджреЗрдиреЗ рдореЗрдВ рд╕рдВрдХреЛрдЪ рди рдХрд░реЗрдВред
рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЗ рд▓рд┐рдП GitHub рд▓рд┐рдВрдХрджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХрд╛ Markdown рдХреЛ рдХреНрд▓рд┐рдкрдмреЛрд░реНрдб рдкрд░ рдХреЙрдкреА рдХрд░реЗрдВ
рдкреНрд░рд▓реЗрдЦрди: intlayer рдореЗрдВ getLocalizedUrl рдлрд╝рдВрдХреНрд╢рди
рд╡рд┐рд╡рд░рдг
getLocalizedUrl рдлрд╝рдВрдХреНрд╢рди рджрд┐рдП рдЧрдП URL рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ locale рдХреЗ рд╕рд╛рде рдЙрдкрд╕рд░реНрдЧ рдХрд░рдХреЗ рдПрдХ localized URL рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИред рдпрд╣ absolute рдФрд░ relative рджреЛрдиреЛрдВ URLs рдХреЛ рд╣реИрдВрдбрд▓ рдХрд░рддрд╛ рд╣реИ, рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд╕рд╣реА locale prefix configuration рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдореБрдЦреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ:
- рдХреЗрд╡рд▓ 2 parameters рдЖрд╡рд╢реНрдпрдХ рд╣реИрдВ:
urlрдФрд░currentLocale locales,defaultLocale, рдФрд░modeрдХреЗ рд╕рд╛рде optionaloptionsobject- рдЕрдкрдиреА project рдХреА internationalization configuration рдХреЛ defaults рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ
- рд╕рд░рд▓ cases рдХреЗ рд▓рд┐рдП minimal parameters рдХреЗ рд╕рд╛рде рдпрд╛ complex scenarios рдХреЗ рд▓рд┐рдП рдкреВрд░реА рддрд░рд╣ рд╕реЗ customized рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
- рдХрдИ routing modes рдХреЛ support рдХрд░рддрд╛ рд╣реИ:
prefix-no-default,prefix-all,no-prefix, рдФрд░search-params
рд╡рд┐рд╡рд░рдг
getLocalizedUrl рдлрд╝рдВрдХреНрд╢рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд▓реЛрдХрд▓ рдХреЗ рд╕рд╛рде рджрд┐рдП рдЧрдП URL рдХреЗ рдЖрдЧреЗ рд▓реЛрдХрд▓рд╛рдЗрдЬрд╝реНрдб URL рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдкреВрд░реНрдг (absolute) рдФрд░ рд╕рд╛рдкреЗрдХреНрд╖ (relative) рджреЛрдиреЛрдВ рдкреНрд░рдХрд╛рд░ рдХреЗ URL рдХреЛ рд╕рдВрднрд╛рд▓рддрд╛ рд╣реИ, рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддреЗ рд╣реБрдП рдХрд┐ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕рд╣реА рд▓реЛрдХрд▓ рдЙрдкрд╕рд░реНрдЧ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдкреИрд░рд╛рдореАрдЯрд░
рдЖрд╡рд╢реНрдпрдХ рдкреИрд░рд╛рдореАрдЯрд░
url: string- Description: рдореВрд▓ URL string рдЬрд┐рд╕реЗ locale рдХреЗ рд╕рд╛рде prefix рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рд╣реИред
- Type:
string - Required: Yes
currentLocale: Locales- Description: рд╡рд░реНрддрдорд╛рди locale рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП URL рдХреЛ localize рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред
- Type:
Locales - Required: Yes
Optional Parameters
options?: object- Description: URL localization рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рд▓рд┐рдП Configuration objectред
- Type:
object Required: No (Optional)
options.locales?: Locales[]- Description: рд╕рдорд░реНрдерд┐рдд locales рдХрд╛ Arrayред рдпрджрд┐ рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЗ project configuration рд╕реЗ configured locales рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред
- Type:
Locales[] - Default:
Project Configuration
options.defaultLocale?: Locales- Description: Application рдХреЗ рд▓рд┐рдП default localeред рдпрджрд┐ рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЗ project configuration рд╕реЗ configured default locale рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред
- Type:
Locales - Default:
Project Configuration
options.mode?: 'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params'- Description: Locale handling рдХреЗ рд▓рд┐рдП URL routing modeред рдпрджрд┐ рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЗ project configuration рд╕реЗ configured mode рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред
- Type:
'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params' - Default:
Project Configuration - Modes:
prefix-no-default: Default locale рдХреЗ рд▓рд┐рдП рдХреЛрдИ prefix рдирд╣реАрдВ, рд╕рднреА рдЕрдиреНрдп рдХреЗ рд▓рд┐рдП prefixprefix-all: Default рд╕рд╣рд┐рдд рд╕рднреА locales рдХреЗ рд▓рд┐рдП prefixno-prefix: URL рдореЗрдВ рдХреЛрдИ locale prefix рдирд╣реАрдВsearch-params: Locale рдХреЗ рд▓рд┐рдП query parameters рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП,?locale=fr)
рд░рд┐рдЯрд░реНрдиреНрд╕
- рдкреНрд░рдХрд╛рд░:
string - рд╡рд┐рд╡рд░рдг: рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд▓реЛрдХрд▓ рдХреЗ рд▓рд┐рдП рд╕реНрдерд╛рдиреАрдпрдХреГрдд URLред
рдЙрджрд╛рд╣рд░рдг рдЙрдкрдпреЛрдЧ
рдмреБрдирд┐рдпрд╛рджреА рдЙрдкрдпреЛрдЧ (рдХреЗрд╡рд▓ рдЖрд╡рд╢реНрдпрдХ рдкреИрд░рд╛рдореАрдЯрд░)
рдЬрдм рдЖрдк рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдЕрдВрддрд░реНрд░рд╛рд╖реНрдЯреНрд░реАрдпрдХрд░рдг рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рд╕рд╛рде рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░ рд▓реЗрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдХреЗрд╡рд▓ рдЖрд╡рд╢реНрдпрдХ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд╕рд╛рде рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
рдХреЛрдб рдХреЛ рдХреНрд▓рд┐рдкрдмреЛрд░реНрдб рдкрд░ рдХреЙрдкреА рдХрд░реЗрдВ
import { getLocalizedUrl, Locales } from "intlayer";
// рдЖрдкрдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ locales, defaultLocale, рдФрд░ mode рдХреЗ рд▓рд┐рдП
getLocalizedUrl("/about", Locales.FRENCH);
// рдЖрдЙрдЯрдкреБрдЯ: "/fr/about" (рдорд╛рдирддреЗ рд╣реБрдП рдХрд┐ рдлреНрд░реЗрдВрдЪ рд╕рдорд░реНрдерд┐рдд рд╣реИ рдФрд░ mode 'prefix-no-default' рд╣реИ)
getLocalizedUrl("/about", Locales.ENGLISH);
// рдЖрдЙрдЯрдкреБрдЯ: "/about" рдпрд╛ "/en/about" (рдЖрдкрдХреА mode рд╕реЗрдЯрд┐рдВрдЧ рдХреЗ рдЖрдзрд╛рд░ рдкрд░)
Advanced Usage (With Optional Parameters)
рдЖрдк optional options parameter рдкреНрд░рджрд╛рди рдХрд░рдХреЗ default configuration рдХреЛ override рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
Relative URLs (All Options Specified)
рдХреЛрдб рдХреЛ рдХреНрд▓рд┐рдкрдмреЛрд░реНрдб рдкрд░ рдХреЙрдкреА рдХрд░реЗрдВ
import { getLocalizedUrl, Locales } from "intlayer";
// рд╕рднреА optional parameters рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкреНрд░рджрд╛рди рдХрд░рдирд╛
getLocalizedUrl("/about", Locales.FRENCH, {
locales: [Locales.ENGLISH, Locales.FRENCH],
defaultLocale: Locales.ENGLISH,
mode: "prefix-no-default",
});
// Output: "/fr/about" French locale рдХреЗ рд▓рд┐рдП
getLocalizedUrl("/about", Locales.ENGLISH, {
locales: [Locales.ENGLISH, Locales.FRENCH],
defaultLocale: Locales.ENGLISH,
mode: "prefix-no-default",
});
// Output: "/about" рдбрд┐рдлрд╝реЙрд▓реНрдЯ (English) locale рдХреЗ рд▓рд┐рдП
рд╕рд╛рдкреЗрдХреНрд╖ URL
рдХреЛрдб рдХреЛ рдХреНрд▓рд┐рдкрдмреЛрд░реНрдб рдкрд░ рдХреЙрдкреА рдХрд░реЗрдВ
import { getLocalizedUrl, Locales } from "intlayer";
getLocalizedUrl(
"/about",
Locales.FRENCH,
[Locales.ENGLISH, Locales.FRENCH],
Locales.ENGLISH,
false
);
// рдЖрдЙрдЯрдкреБрдЯ: рдлреНрд░реЗрдВрдЪ рд▓реЛрдХрд▓ рдХреЗ рд▓рд┐рдП "/fr/about"
// рдЖрдЙрдЯрдкреБрдЯ: рдбрд┐рдлрд╝реЙрд▓реНрдЯ (рдЕрдВрдЧреНрд░реЗрдЬрд╝реА) рд▓реЛрдХрд▓ рдХреЗ рд▓рд┐рдП "/about"
рдкреВрд░реНрдг URL
рдХреЛрдб рдХреЛ рдХреНрд▓рд┐рдкрдмреЛрд░реНрдб рдкрд░ рдХреЙрдкреА рдХрд░реЗрдВ
рдЕрд╕рдорд░реНрдерд┐рдд рд▓реЛрдХрд▓
рдХреЛрдб рдХреЛ рдХреНрд▓рд┐рдкрдмреЛрд░реНрдб рдкрд░ рдХреЙрдкреА рдХрд░реЗрдВ
рдХрд┐рдирд╛рд░реЗ рдХреЗ рдорд╛рдорд▓реЗ
рдХреЛрдИ рд▓реЛрдХрд▓ рд╕реЗрдЧрдореЗрдВрдЯ рдирд╣реАрдВ:
- рдпрджрд┐ URL рдореЗрдВ рдХреЛрдИ рд▓реЛрдХрд▓ рд╕реЗрдЧрдореЗрдВрдЯ рдирд╣реАрдВ рд╣реИ, рддреЛ рдлрд╝рдВрдХреНрд╢рди рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рдЙрдкрдпреБрдХреНрдд рд▓реЛрдХрд▓ рдХреЛ рдкреНрд░реАрдлрд┐рдХреНрд╕ рдХрд░рддрд╛ рд╣реИред
рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд▓реЛрдХрд▓:
- рдЬрдм
prefixDefaultfalseрд╣реЛрддрд╛ рд╣реИ, рддреЛ рдлрд╝рдВрдХреНрд╢рди рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд▓реЛрдХрд▓ рдХреЗ рд▓рд┐рдП URL рдХреЛ рдкреНрд░реАрдлрд┐рдХреНрд╕ рдирд╣реАрдВ рдХрд░рддрд╛ред
- рдЬрдм
рдЕрд╕рдорд░реНрдерд┐рдд рд▓реЛрдХрд▓:
localesрдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз рдирд╣реАрдВ рдХрд┐рдП рдЧрдП рд▓реЛрдХрд▓ рдХреЗ рд▓рд┐рдП, рдлрд╝рдВрдХреНрд╢рди рдХреЛрдИ рдкреНрд░реАрдлрд┐рдХреНрд╕ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд░рддрд╛ред
рд░рд╛рдЙрдЯрд┐рдВрдЧ рдореЛрдбреНрд╕:
'prefix-no-default': рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд▓реЛрдХреЗрд▓ рдХреЗ рдкрд╛рд╕ рдХреЛрдИ рдЙрдкрд╕рд░реНрдЧ рдирд╣реАрдВ рд╣реИ, рдЕрдиреНрдп рдХреЗ рдкрд╛рд╕ рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП,/about,/fr/about)'prefix-all': рд╕рднреА рд▓реЛрдХреЗрд▓реНрд╕ рдХреЗ рдкрд╛рд╕ рдЙрдкрд╕рд░реНрдЧ рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП,/en/about,/fr/about)'no-prefix': URLs рдореЗрдВ рдХреЛрдИ рд▓реЛрдХреЗрд▓ рдЙрдкрд╕рд░реНрдЧ рдирд╣реАрдВ (рд▓реЛрдХреЗрд▓ рдХрд╣реАрдВ рдФрд░ рд╕рдВрднрд╛рд▓рд╛ рдЬрд╛рддрд╛ рд╣реИ)'search-params': рдХреНрд╡реЗрд░реА рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд▓реЛрдХреЗрд▓ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП,/about?locale=fr)
рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ
рдПрдХ рдмрд╣реБрднрд╛рд╖реА рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдореЗрдВ, рд╕рд╣реА рднрд╛рд╖рд╛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП locales рдФрд░ defaultLocale рдХреЗ рд╕рд╛рде рдЕрдВрддрд░рд░рд╛рд╖реНрдЯреНрд░реАрдпрдХрд░рдг рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред рдиреАрдЪреЗ рдПрдХ рдЙрджрд╛рд╣рд░рдг рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдХреИрд╕реЗ getLocalizedUrl рдХреЛ рдПрдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╕реЗрдЯрдЕрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
рдХреЛрдб рдХреЛ рдХреНрд▓рд┐рдкрдмреЛрд░реНрдб рдкрд░ рдХреЙрдкреА рдХрд░реЗрдВ
import { Locales, type IntlayerConfig } from "intlayer";
// рд╕рдорд░реНрдерд┐рдд рд▓реЛрдХрд▓ рдФрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд▓реЛрдХрд▓ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди
export default {
internationalization: {
locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],
defaultLocale: Locales.ENGLISH,
},
} satisfies IntlayerConfig;
export default config;
рдЙрдкрд░реЛрдХреНрдд рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди ENGLISH, FRENCH, рдФрд░ SPANISH рдХреЛ рд╕рдорд░реНрдерд┐рдд рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╣рдЪрд╛рдирддрд╛ рд╣реИ рдФрд░ ENGLISH рдХреЛ рдлреЙрд▓рдмреИрдХ рднрд╛рд╖рд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред
рдЗрд╕ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, getLocalizedUrl рдлрд╝рдВрдХреНрд╢рди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рднрд╛рд╖рд╛ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рд╕реНрдерд╛рдиреАрдпрдХреГрдд URL рдЙрддреНрдкрдиреНрди рдХрд░ рд╕рдХрддрд╛ рд╣реИ:
рдХреЛрдб рдХреЛ рдХреНрд▓рд┐рдкрдмреЛрд░реНрдб рдкрд░ рдХреЙрдкреА рдХрд░реЗрдВ
getLocalizedUrl рдХреЛ рдПрдХреАрдХреГрдд рдХрд░рдХреЗ, рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХрдИ рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рд╕реБрд╕рдВрдЧрдд URL рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЛ рдмрдирд╛рдП рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдиреБрднрд╡ рдФрд░ SEO рджреЛрдиреЛрдВ рдореЗрдВ рд╕реБрдзрд╛рд░ рд╣реЛрддрд╛ рд╣реИред
