Los enlaces permanentes o pretty permalinks son una bonita forma de hacer que el título de las entradas pase a una URL sin afectar al formato de éstas. De igual forma, si estamos trabajando en un sistema que requiera tratamiento de ficheros y subida/bajada de éstos, debemos también atender a este problema de convertir títulos con multitud de símbolos en URL válidas y que no introduzca caracteres como los %20 en lugar de los espacios en blanco.
Os traigo una función, que viene incluida dentro de WordPress, sanitize_title_with_dashes(), que hace justo eso mismo y que os puede ser muy útil desarrollando cualquier tema o plugin. Para el caso concreto de nombres de ficheros tenemos sanitize_file_name( $filename ) que hace eso mismo pero con nombres de fichero.
¿Qué hace la función?
Limpia el título, reemplazando espacios en blancos y otros caracteres conflictivos por guiones. Devuelve el título equivalente, usando sólo caracteres alfanuméricos, barras bajas y guiones.