Задайте питання та отримайте підсумок документа, вказавши цю сторінку та обраного вами постачальника штучного інтелекту
Історія версій
- "Implement custom URL rewrites"v8.0.022.01.2026
Вміст цієї сторінки перекладено за допомогою штучного інтелекту.
Переглянути останню версію оригінального вмісту англійськоюЯкщо у вас є ідея щодо покращення цієї документації, будь ласка, долучіться, надіславши pull request на GitHub.
Посилання на документацію на GitHubСкопіювати документацію у форматі Markdown в буфер обміну
Документація: функція getLocalizedPath у intlayer
Опис
Функція getLocalizedPath перетворює канонічний шлях (внутрішній шлях додатка) у його локалізований еквівалент на основі вказаної локалі та правил переписування. Вона особливо корисна для генерації SEO-дружніх URL-адрес, що відрізняються залежно від мови.
Це відносний аналог getLocalizedUrl — для відносного вводу обидва повертають одне й те саме значення. На відміну від getLocalizedUrl, він ніколи не повертає абсолютний URL: конфігурація domains ігнорується, тому локаль, обслужена з власного домену, все одно повертає шлях. Абсолютний вввід прийнятий, але його походження видаляється — зберігаються лише його шлях, рядок запиту та хеш.
Ключові можливості:
- Підтримує динамічні параметри маршруту з використанням синтаксису
[param]. - Розв'язує шляхи відповідно до кастомних правил переписування, визначених у вашій конфігурації.
- Автоматично здійснює відкат до канонічного шляху, якщо для вказаної локалі не знайдено правила переписування.
Сигнатура функції
Скопіюйте код у буфер обміну
Параметри
Обов'язкові параметри
canonicalPath: string- Опис: Внутрішній шлях додатка (наприклад,
/about,/product/[id]). - Тип:
string - Обов'язковий: Так
- Опис: Внутрішній шлях додатка (наприклад,
Необов'язкові параметри
locale?: Locales- Description: Цільовий локаль, для якого слід локалізувати шлях.
- Type:
Locales - Default: Локаль за замовчуванням конфігурації вашого проекту.
options?: object- Description: Перевизначення маршрутизації. Кожен запис за замовчуванням використовує конфігурацію вашого проекту.
- Type:
object
rewriteRules?: RoutingConfig['rewrite']- Опис: Об'єкт, що визначає кастомні правила переписування. Якщо не вказано, використовується значення
routing.rewriteз конфігурації вашого проєкту. - Тип:
RoutingConfig['rewrite'] - За замовчуванням:
configuration.routing.rewrite
- Опис: Об'єкт, що визначає кастомні правила переписування. Якщо не вказано, використовується значення
Повертає
- Тип:
string - Опис: Локалізований шлях для зазначеної локалі.
Тип звужується на основі правил перезапису, оголошених у вашій конфігурації, тому редактор показує розташовану шляхом, а не звичайний string:
Скопіюйте код у буфер обміну
Те саме звуження поширюється на getLocalizedUrl, яка застосовує правила переписування перед додаванням префікса локалі.
Два випадки залишаються розширеними до string, оскільки вони не можуть бути розв'язані під час компіляції:
- шлях, який не є рядковим літералом (наприклад, побудований зі змінної);
- шлях, який відповідає правилу з використанням багатосегментного або необов'язкового параметра (
[...slug],[[...slug]],:param?).
Приклад використання
Базове використання (з конфігурацією)
Якщо ви налаштували власні правила перезапису у файлі intlayer.config.ts:
Скопіюйте код у буфер обміну
Використання з динамічними маршрутами
Скопіюйте код у буфер обміну
Ручні правила перезапису
Ви також можете передати ручні правила перезапису у функцію:
Скопіюйте код у буфер обміну
Пропуск локалі
Коли локаль не вказана, шлях локалізується для налаштованої локалі за замовчуванням:
Скопіюйте код у буфер обміну
Пов'язані функції
getCanonicalPath: Відновлює локалізований шлях до внутрішнього канонічного шляху.getLocalizedUrl: Генерує повністю локалізований URL (включно з протоколом, хостом та префіксом локалі).
