Filtrar vocales con tilde y letra ñ en nombres de archivo

Tweet about this on TwitterShare on Google+Share on FacebookEmail this to someonePrint this page

Hace algunos años todo el mundo tenía muy claro que a la hora de dar nombre a un archivo, había que evitar los caracteres propios del idioma español, como la “ñ” o poner vocales con tilde. Entre otras cosas se tenía claro porque no todos los sistemas operativos o dispositivos electrónicos en general permitían poner estos caracteres típicos de nuestro idioma.

Pero hoy en día esa limitación no existe, en teoría. Y digo en teoría porque aunque podemos hacerlo, la mayoría de las veces es recomendable no usar la letra “ñ” ni vocales acentuadas en los nombres de los archivos, sobre todo si hablamos de archivos a los que se va a acceder a través de la web.

Letra eñePor supuesto siempre que doy formación a un cliente de cómo introducir los contenidos, le aconsejo entre otras cosas que si puede debe evitar el uso de los caracteres internacionales en los nombres de archivo. Pero a veces por olvido, a veces porque es difícil controlar esto cuando tienes una legión de colaboradores introduciendo contenido en tu web… siempre se escapan archivos.

Para este tipo de clientes decidí crear una pequeña y sencilla extensión de WordPress que únicamente cumple la función de automatizar este consejo, y que ahora publico para su descarga gratutia.

Es decir, Sanitize Spanish Filenames que es como se llama la criatura, examina y filtra los nombres de los archivos que se suben a WordPress a través del gestor de archivos multimedia integrado sustituyendo los caracteres áéíóúñ y ÁÉÍÓÚÑ por aeioun y AEIOUN respectivamente.

Esto hace que los nombres de los archivos sean más “amigables” con algunos servidores o incluso algunas extensiones de WordPress que no se llevan bien con los nombres de archivos que contienen caracteres internacionales como los usados en el idioma español.

Podéis instalar la extensión desde el propio menú de instalar extensiones de vuestro WordPress, o descargar la extensión desde el repositorio oficial de extensiones de WordPress y simplemente activarla, no hay que configurar nada :)

6 pensamientos en “Filtrar vocales con tilde y letra ñ en nombres de archivo

  1. Argentine Translator

    Gracias por crear una aplicación para que podamos usar el castellano plenamente. Según el censo de 2010, en Estados Unidos viven 50 millones de personas que hablan español. Saludos cordiales. AT

  2. Edu

    Hola Samuel, excelente plugin para los que desarrollamos sitios web en castellano utilizando WP como CMS.

    Sólo una sugerencia: sería conveniente añadir las diéresis (ü Ü) a los caracteres a sustituir.

    Saludos
    Edu

  3. eduardo

    I wish I had known about this plugin years ago. One of my clients is from Brazil and created filenames (mainly for pictures) which worked fine until 2.9.x. Upon upgrading to 3.x all the URLs containing those special characters are now broken links. See an example at http://www.tiaselma.com/2011/01/tenham-do/ (the filename in the filesystem is “principes-perfeitos-já-comprometidos.jpg”).

    I take your plugin only sanitizes future uploads. Do you have any ideas of what I could do (I have SSH access) to solve this problem on the thousands of files with broken links?

    By the way, you might want to take a look here for ideas on further improving your plugin:
    http://stackoverflow.com/questions/2668854/sanitizing-strings-to-make-them-url-and-filename-safe

    Gracias!

  4. Edu

    Hola Samuel,

    Creo que la última versión hace su función al revés. He subido una imagen con nombre GEOMETRÍA.png y ha mantenido el acento en el nombre de archivo, sin embargo el título de la imagen en WordPress le ha quitado el acento.

    En ambos casos cambia a minúscula…

    1. Samuel Aguilera

      No es que haga la función al revés, pero si es cierto que el cambio introducido en la versión 1.0.9 hace que no se aplique el filtro correctamente al nombre de archivo (que es lo único que toca el plugin, el título lo genera WordPress automáticamente). Acabo de subir al repositorio la versión 1.1 que corrige este fallo (estará disponible para actualizar en breves minutos), gracias por avisar ;)

Deja un comentario

Tu dirección de email no será publicada. Campos obligatorios marcados con *