Ferramentas
Guias

Slugify

Texto

Converte qualquer texto — incluindo chinês, acentos e emojis — em um slug seguro para URL. Escolha separador, maiúsculas/minúsculas, transliteração CJK→pinyin e um limite de comprimento opcional, com pré-visualização ao vivo.

100% no cliente Sem backend
Entrada
Saída
Digite ou cole texto para gerar um slug.
Nesta página

O que é uma ferramenta de slugify?#

Uma ferramenta de slugify transforma um título legível por humanos num slug seguro para URL — a string compacta, em minúsculas, sem pontuação que vive num endereço web depois do domínio. How to Brew Coffee at Home passa a how-to-brew-coffee-at-home; Café Münchën passa a cafe-munchen; 你好世界 passa a ni-hao-shi-jie. Os slugs são a forma como blogs, sites de e-commerce e sistemas de documentação constroem URLs legíveis, partilháveis e amigáveis para SEO a partir de títulos que nunca foram escritos pensando num URL.

As partes difíceis são exatamente os carateres que as pessoas realmente usam: acentos (café), ligaduras (ß, æ), travessões e aspas tipográficas, e ideogramas CJK que não têm nenhuma representação ASCII. Um ingénuo “apagar tudo o que não seja a-z” transforma 你好世界 numa string vazia, o que produz um URL partido. Esta ferramenta trata os três corretamente: decompõe as letras acentuadas e retira as marcas combinatórias (é → e), mapeia as ligaduras latinas não-decomponíveis (ß → ss, æ → ae) e translitera ideogramas CJK para pinyin sem tons (你好世界 → ni hao shi jie) para que um título chinês ainda produza um slug com significado e pronunciável.

Tudo corre localmente. O dicionário de pinyin só é carregado quando a entrada contém efetivamente CJK, pelo que um slug puramente latino nunca paga por ele.

Como usar#

  1. Escreva ou cole o título no painel de entrada à esquerda.
  2. Escolha o separador — hífen (padrão) ou sublinhado.
  3. Marque Minúsculas (ligado por padrão) para dobrar a saída para minúsculas; desmarque se precisa de preservar a maiúscula.
  4. Marque Translitarar CJK para pinyin (ligado por padrão) para converter carateres CJK em pinyin sem tons; desmarque se prefere que o CJK seja removido em vez de transliterado.
  5. Opcionalmente defina um Comprimento máx. (0 significa ilimitado). Quando o slug o excede, é cortado e qualquer separador final pendente é aparado para que o URL nunca termine num - nu.
  6. Leia o painel de saída à direita — o slug aparece no momento em que a entrada ou qualquer opção muda. Carregue em Copiar para o recolher.

A linha de estado reporta o comprimento do slug e sinaliza dois casos especiais: quando o CJK foi transliterado e quando o resultado foi truncado para caber num comprimento máximo.

Principais recursos#

  • Tratamento de acentos e ligaduras. Decomposição NFKD mais um pequeno mapa de compatibilidade latino transforma café, Münchën, straße, œuvre em ASCII limpo (cafe, munchen, strasse, oeuvre) em vez de descartar as letras inteiramente.
  • CJK para pinyin. Os ideogramas chineses são transliterados para pinyin sem tons usando um dicionário embutido, pelo que 你好世界 passa a ni-hao-shi-jie — um slug pronunciável e com significado em vez de vazio ou mutilado.
  • Fronteiras de palavra limpas. Sequências CJK são envolvidas em espaços antes da passagem do separador, pelo que a saída transliterada se separa em palavras (ni-hao) em vez de se colar (nihao).
  • Limite de comprimento com aparo limpo. Um comprimento máximo corta o slug e depois retira qualquer separador final pendente, para que nunca se obtenha um URL a terminar em -.
  • Hífen ou sublinhado. Escolha o separador que a sua plataforma espera — a maioria dos slugs web modernos usa hífens, mas alguns sistemas e convenções de nomes de arquivo usam sublinhados.
  • Carregamento preguiçoso do pinyin. O dicionário de pinyin só é importado da primeira vez que a entrada contém efetivamente CJK, pelo que um slug todo-latim nunca o descarrega.
  • Local e nunca lança erros. Entrada vazia reporta empty; entrada que se reduz a nada (por exemplo, só emoji) reporta no-output. As falhas tornam-se uma mensagem clara, nunca uma exceção.

Exemplo detalhado#

Cole o título do texto de exemplo do campo de entrada, com todos os padrões (separador hífen, minúsculas ligadas, transliterar ligado):

Café Münchën — 你好世界

Passo a passo:

  1. CJK é detetado, pelo que 你好世界 é transliterado para ni hao shi jie.
  2. Acentos são retirados: CaféCafe, MünchënMunchen.
  3. O travessão e os espaços colapsam para o separador.
  4. O resultado passa a minúsculas e os separadores iniciais/finais são aparados.

O painel de saída mostra:

cafe-munchen-ni-hao-shi-jie

Agora defina Comprimento máx. para 20 e regenere. O slug é cortado e o hífen final pendente é removido:

cafe-munchen-ni-hao

Note que os acentos passaram a ASCII simples, o título chinês tornou-se pinyin pronunciável separado em palavras, e o limite de comprimento produziu um fragmento de URL limpo em vez de um a terminar a meio de uma palavra ou num hífen nu.

Perguntas frequentes#

Porque é que o meu título chinês passa a pinyin em vez de se manter como carateres?#

Porque os URLs são mais seguros e portáteis quando usam ASCII. Carateres CJK num URL exigem percent-encoding (cada passa a %E4%BD%A0), o que é ilegível para humanos e para muitas ferramentas de analítica. Pinyin sem tons mantém o slug pronunciável, com significado e só em ASCII — ni-hao-shi-jie é um URL muito melhor do que uma string de sinais de percentagem. Se prefere manter os carateres originais, desmarque Translitarar CJK para pinyin.

O que acontece aos emojis e a outros símbolos não alfanuméricos?#

São retirados. Emojis, aspas tipográficas, parênteses e a maioria da pontuação não sobrevivem ao pipeline do slug — não são letras, pelo que a passagem de colapso não-alfanumérico os transforma em separadores. Se a sua entrada é emojis e símbolos, tudo é retirado e a ferramenta reporta no-output em vez de emitir um slug vazio.

Devo usar hífen ou sublinhado como separador?#

Para URLs que os humanos vão ler, use hífen — os motores de pesquisa tratam os hífens como separadores de palavras e os hífens são a convenção em praticamente todas as plataformas web modernas. Os sublinhados são adequados quando o slug é afinal um nome de arquivo ou um identificador consumido por um sistema que reserva hífens para outra coisa (intervalos de versão, flags). A ferramenta suporta ambos para que se possa corresponder ao que o seu alvo espera.

Como funciona o corte do comprimento máximo?#

O slug é primeiro construído por completo, depois cortada para o comprimento pedido. Se o corte cair no meio de uma palavra, a palavra fica parcial; se o corte deixar um separador final, esse separador é aparado. Isto garante que o slug nunca excede o limite e nunca termina num - ou _ nu, que é o que os campos de URL e as larguras de coluna de base de dados efetivamente exigem.

Isto é o mesmo que URL-encoding?#

Não, e a diferença interessa. URL-encoding (percent-encoding) escapa carateres para que possam viajar dentro de um URL — café passa a caf%C3%A9. Slugify em vez disso normaliza o texto para letras e separadores ASCII — café passa a cafe. Os slugs são para o segmento de caminho legível por humanos de um URL; o percent-encoding é para transportar com segurança valores arbitrários em query strings. Se precisa do segundo, use a ferramenta /en/encoding/url/.