Texto a slug
«Cómo Añadir un Título» se convierte en «como-anadir-un-titulo» y «Café Ñandú 2024» en «cafe-nandu-2024»: minúsculas, sin tildes ni signos, solo palabras unidas por guiones. Listo para enlaces de blog, páginas de producto y redirecciones. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Texto
- Hello World
- Slug
- hello-world
- Original
- Hello World
- Largo
- 11
- Palabras
- 2
Esta herramienta de texto a slug toma un título o frase no vacía y devuelve un único slug apto para URL: cada letra se pone en minúscula, los acentos y otras marcas diacríticas se eliminan, y las palabras se unen con guiones para que el resultado sea seguro para segmentos de ruta, enlaces permanentes de CMS, y rutas de sitios estáticos. Los slugs son la forma habitual de las URL de entradas de blog, rutas de producto, páginas de documentación, y entradas de mapa del sitio que deben mantenerse legibles sin espacios, puntuación, ni ruido no ASCII. Alimente títulos con espacios, titulares en español o francés con acentos, puntuación mixta, o texto de marketing ruidoso, y el motor reconstruye un slug determinista con guiones. Nada se adivina a partir de un modelo, nada se obtiene por red, y nada depende del reloj ni de semillas aleatorias.
Qué significa la conversión de texto a slug y qué contiene la respuesta
La conversión de texto a slug convierte un título de varias palabras en un identificador seguro para rutas donde cada letra está en minúscula, los acentos han desaparecido, y las palabras se separan con guiones únicos, sin espacios ni otra puntuación entre ellas. En la práctica, Hola Mundo se convierte en hola-mundo, un titular en español como Cómo Añadir un Título se convierte en como-anadir-un-titulo, Café Ñandú 2024 se convierte en cafe-nandu-2024, y un texto de marketing ruidoso con signos de exclamación colapsa en una cadena limpia de guiones.
La transformación no es camelCase, no es CONSTANT_CASE, no es PascalCase, y no es una cadena de visualización en formato título: solo queda el slug en minúsculas amigable para SEO.
Esta calculadora devuelve cinco campos estables: slug contiene el resultado apto para URL que pegará en un CMS, un mapa del sitio, o una tabla de rutas; original repite exactamente la cadena de entrada para que pueda auditar qué se transformó; length reporta el conteo de caracteres del slug; words cuenta cuántos tokens separados por guion se produjeron; y method es la etiqueta fija slugify para registros y canalizaciones de varias herramientas.
No hay un modo parcial que solo ponga en minúscula sin eliminar acentos, ninguna tabla de transliteración específica de configuración regional más allá de la descomposición NFD Unicode de marcas combinadas, y ninguna conversión silenciosa de null a un éxito vacío.
Dónde encaja la conversión de texto a slug en la publicación, el SEO y el software
Escritores y editores se encuentran con los slugs cuando un CMS exige un enlace permanente limpio para el título de una entrada, cuando un generador de sitios estáticos congela el front-matter en un nombre de carpeta, o cuando un árbol de documentación mapea encabezados de capítulo en rutas de URL anidadas. Los profesionales de SEO normalizan titulares de campaña en segmentos de ruta coherentes para que la analítica, los mapas del sitio y los enlaces internos compartan una sola forma.
Los docentes pueden pregenerar claves de respuesta que muestren el slug esperado para títulos de muestra con acentos sin confiar en macros de hoja de cálculo opacas que cambian reglas de configuración regional a mitad de archivo. Los desarrolladores backend y frontend usan slugs para rutas de blog, páginas de producto, artículos de base de conocimiento, y mapas de redirección que deben mantenerse legibles para humanos mientras siguen siendo seguros para rutas.
Los equipos de integración convierten títulos de CMS heredados en claves estables con guiones antes de que los scripts de migración congelen las URL públicas. Las apps móviles y multiplataforma mapean etiquetas humanas en identificadores de slug compartidos que enlazan enlaces profundos y alternativas web. Los equipos de soporte y operaciones pegan asuntos de tickets ruidosos o nombres en clave de lanzamiento en slugs para que los tableros y los manuales de operación compartan una sola forma de identificador.
Combínela con conversores de mayúsculas, herramientas de codificación u otros ayudantes de texto gratuitos y deterministas cuando esté construyendo un pequeño laboratorio para formularios, preparación de CMS e higiene de URL.
Qué puede hacer con ella
Enlaces permanentes de CMS y blog
Convierta títulos de entradas y encabezados de página en slugs limpios con guiones para rutas de CMS, generadores de sitios estáticos y entradas de mapa del sitio.
Mapas de migración y redirección
Normalice títulos heredados con acentos en segmentos de ruta estables antes de construir tablas de redirección e inventarios de URL públicas.
Preguntas frecuentes
¿Cuánto cuesta el conversor de texto a slug?
Es gratis en su navegador en esta página.
¿Cómo se construye el slug a partir de un título?
El motor elimina los acentos mediante Unicode NFD, pone en minúscula las letras, reemplaza las secuencias no alfanuméricas con guiones, y recorta los guiones iniciales o finales.
¿Qué ocurre si el texto está vacío?
Las cadenas vacías, de solo espacio en blanco, y los títulos de solo puntuación no producen un slug.
¿Esta herramienta transliteran escrituras no latinas?
Elimina los diacríticos latinos y conserva letras y dígitos ASCII. Los caracteres fuera de a-z y 0-9 tras eliminar acentos se convierten en guiones y pueden dejar un resultado vacío si no queda nada alfanumérico.
¿El resultado es determinista?
Sí. El mismo título siempre produce el mismo slug. No hay red, aleatoriedad, ni comportamiento dependiente de la fecha en la transformación.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/str/slugify \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Hello World — Café Ñandú!"}'const res = await fetch("https://api.kit.forhosting.com/str/slugify", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Hello World — Café Ñandú!"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/str/slugify",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Hello World — Café Ñandú!"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/str/slugify", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Hello World — Café Ñandú!"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Hello World — Café Ñandú!"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/str/slugify", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"text": "Hello World — Café Ñandú!"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "str.slugify",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Límites
max_chars | 100000 |
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
La entrada vacía y las cadenas de solo puntuación fallan con un error claro de invalid_input para que un formulario en blanco no pueda parecer una conversión exitosa. Úsela gratis en el navegador para preparación de contenido, comprobaciones de SEO y limpieza de datos, o llame a la API a $0.002 por solicitud exitosa cuando CI, canalizaciones de CMS o demostraciones docentes necesiten el mismo slug cada vez.
Qué significa la conversión de texto a slug y qué contiene la respuesta
El motor construye un slug completo dentro del largo admitido o rechaza la solicitud con invalid_input. Los casos rechazados incluyen un campo text ausente, un valor null, una cadena vacía, cargas útiles de solo espacio en blanco o de solo puntuación que no dejan tokens de letra o dígito, objetos y arreglos que no son texto plano, y cualquier carga útil más larga que el conteo máximo de caracteres documentado.
Cómo se lee el campo text y cómo se mantiene reproducible el resultado
El valor debe ser una cadena no vacía; los números finitos y los bigints se convierten primero a cadena, así que un código numérico simple sigue convirtiéndose en un token de slug tras la conversión a dígitos decimales. Los espacios iniciales y finales se absorben durante el paso de reemplazo no alfanumérico; las secuencias internas de espacios, guiones bajos, guiones, puntos, rayas y otros caracteres no alfanuméricos actúan como separadores de palabra y se convierten en guiones únicos en la salida solo entre tokens. Los diacríticos se eliminan con normalización Unicode NFD seguida de una eliminación de marcas combinadas en el rango estándar, así que á, é, í, ó, ú, ñ (como n más tilde tras la descomposición donde corresponda), ü, y letras latinas similares se pliegan a sus bases ASCII antes de completar el paso a minúsculas. Cada letra restante se pone en minúscula con el mapeo de caso por defecto de JavaScript, lo que mantiene Hola, HOLA y hola en el mismo token hola tras el procesamiento. El campo preferido es text, pero se aceptan los alias input, string, value, content, s, title y phrase para que cadenas de consulta, hojas de cálculo y formularios tipados puedan reutilizar el mismo contrato sin renombrar columnas. Los booleanos, los objetos planos y los arreglos se rechazan con un mensaje claro para que un cuerpo JSON equivocado no se convierta en la palabra true ni en un volcado de objeto inútil. Una cadena vacía siempre es invalid_input: la promesa del producto es convertir un título, no inventar un éxito en blanco. El largo está limitado a cien mil caracteres para que un pegado desbocado no pueda monopolizar un Worker; las cargas útiles más largas fallan con un mensaje explícito de límite en lugar de un recorte silencioso truncado. Combine la ejecución gratuita en el navegador de esta página con la API de pago cuando necesite el mismo slug dentro de una canalización automatizada sin enviar sus propios ayudantes de cadenas.
Dónde encaja la conversión de texto a slug en la publicación, el SEO y el software
En esta página el trabajo se ejecuta enteramente en su navegador; a través de la API cada conversión exitosa cuesta $0.002, la validación fallida no se cobra y no se guarda nada después de devolver la respuesta. Esa división —exploración interactiva gratuita y una API de pago idéntica— coincide con el resto del catálogo de nivel A del KIT y le permite pasar de una demostración de aula a una canalización automatizada sin cambiar el resultado de la cadena.
Casos de integración
Fixtures deterministas de slug
Genere slugs de URL reproducibles para pruebas unitarias, archivos dorados y aserciones de CI sobre código de enrutamiento y transformación SEO.