Faça sua pergunta e obtenha um resumo do documento referenciando esta página e o provedor AI de sua escolha
Histórico de versões
- "Implementar reescritas de URL personalizadas"v8.0.022/01/2026
O conteúdo desta página foi traduzido com uma IA.
Veja a última versão do conteúdo original em inglêsSe você tiver uma ideia para melhorar esta documentação, sinta-se à vontade para contribuir enviando uma pull request no GitHub.
Link do GitHub para a documentaçãoCopiar o Markdown do documento para a área de transferência
Documentação: Função getLocalizedPath em intlayer
Descrição
A função getLocalizedPath converte um caminho canônico (caminho interno da aplicação) em seu equivalente localizado com base no locale fornecido e nas regras de reescrita. É particularmente útil para gerar URLs amigáveis para SEO que variam por idioma.
É a contrapartida relativa de getLocalizedUrl — para uma entrada relativa, ambas retornam o mesmo valor. Ao contrário de getLocalizedUrl, nunca retorna uma URL absoluta: a configuração domains é ignorada, portanto uma locale servida do seu próprio domínio ainda produz um caminho. Uma entrada absoluta é aceita, mas sua origem é descartada — apenas seu caminho, string de consulta e hash são mantidos.
Recursos principais:
- Suporta parâmetros de rota dinâmicos usando a sintaxe
[param]. - Resolve caminhos de acordo com regras de reescrita personalizadas definidas na sua configuração.
- Lida automaticamente com fallback para o caminho canônico se nenhuma regra de reescrita for encontrada para o locale especificado.
Assinatura da função
Copiar o código para a área de transferência
Parâmetros
Parâmetros obrigatórios
canonicalPath: string- Descrição: O caminho interno da aplicação (por exemplo,
/about,/product/[id]). - Tipo:
string - Obrigatório: Sim
- Descrição: O caminho interno da aplicação (por exemplo,
Parâmetros Opcionais
locale?: Locales- Description: O locale de destino para o qual o caminho deve ser localizado.
- Type:
Locales - Default: O locale padrão da configuração do seu projeto.
rewriteRules?: RoutingConfig['rewrite']- Descrição: Um objeto que define regras de reescrita personalizadas. Se não for fornecido, assume por padrão a propriedade
routing.rewriteda configuração do seu projeto. - Tipo:
RoutingConfig['rewrite'] Padrão:
configuration.routing.rewriteoptions.locales?: Locales[]— locales suportados. Padrão:configuration.internationalization.localesoptions.defaultLocale?: Locales— o locale padrão. Padrão:configuration.internationalization.defaultLocaleoptions.mode?: 'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params'— como o locale aparece no caminho. Padrão:configuration.routing.modeoptions.rewrite?: RoutingConfig['rewrite']— regras de reescrita personalizadas. Padrão:configuration.routing.rewrite
- Descrição: Um objeto que define regras de reescrita personalizadas. Se não for fornecido, assume por padrão a propriedade
Retorna
- Tipo:
string - Descrição: O caminho localizado para o locale especificado.
O tipo é estreitado a partir das regras de reescrita declaradas na sua configuração, portanto o editor mostra o caminho resolvido em vez de uma simples string:
Copiar o código para a área de transferência
O mesmo narrowing flui para getLocalizedUrl, que aplica as regras de rewrite antes de prefixar a locale.
Dois casos permanecem ampliados para string, porque não podem ser resolvidos em tempo de compilação:
- um caminho que não é um string literal (por exemplo, um construído a partir de uma variável);
- um caminho correspondido por uma regra usando um parâmetro multi-segmento ou opcional (
[...slug],[[...slug]],:param?).
Exemplo de Uso
Uso Básico (Com Configuração)
Se você configurou reescritas personalizadas no seu intlayer.config.ts:
Copiar o código para a área de transferência
Uso com Rotas Dinâmicas
Copiar o código para a área de transferência
Regras de Reescrita Manuais
Você também pode passar regras de reescrita manuais para a função:
Copiar o código para a área de transferência
Omitindo a Locale
Quando nenhuma locale é fornecida, o caminho é localizado para a locale padrão configurada:
Copiar o código para a área de transferência
Funções Relacionadas
getCanonicalPath: Resolve um caminho localizado de volta para o seu caminho canônico interno.getLocalizedUrl: Gera uma URL totalmente localizada (incluindo protocolo, host e prefixo de locale).
