Clean Filenames



It takes the following steps for getting cleaner and safe to use filenames

  • Removes or replace special/international characters that can make your filenames not compliant with servers that don’t have support for international locales and filenames, or third-party services. (e.g. ‘España.png’ will become ‘Espana.png’, ‘prüfen’ will become ‘prufen’).
  • Replaces any ‘+’ in the filename with ‘-‘ (e.g. ‘A+nice+picture.png’ will become ‘A-nice-picture.png’).
  • Replaces any ‘.’ character before the one used for file extension with ‘-‘(e.g. ‘A.nice.picture.png’ will become ‘A-nice-picture.png’).
  • After running all character replacement filters, a filter is applied to ensure that the filename only contains letters, numbers, underscores, dashes, and dots. Any other character will be removed from the filename.
  • And finally all letters in the filename are set to lowercase to prevent issues with case insensitive systems.

This reduces problems with some servers, services, plugins… That may have problems handling filenames with special or international characters.

The plugin does its job during file upload process, so it’ll change only filenames for files being uploaded after plugin activation.

It supports a large number of international characters, including but not only, characters from belarusian, cyrillic alphabet, czech, german, hebrew, hungarian, russian, polish, spanish, ukrainian, and some other special characters (e.g. №, @, $, etc.).

If you have any questions or need support, please check FAQ for additional information before asking.


  • WordPress 3.0 o superior


  • Simply install from your WP dashboard or upload it using FTP. No configuration needed.


¿Cambiarán los nombres de archivo en los archivos subidos antes de la activación del plugin?

No. El plugin hace su trabajo justo después de que se haya subido un archivo y antes de guardarlo en el servidor, así que solo cambiará nombres de archivos que se estén subiendo después de la activación del plugin.

I would like to do additional changes to the filename, is that possible?

Since 1.2.2 version, you can use the scf_friendly_filename filter to perform additional changes to the filename after all the changes done by the plugin.


add_filter ('scf_friendly_filename', 'first_character_uppercase', 10, 1);
function first_character_uppercase ( $friendly_filename ){
    // Make sure first character is always uppercase. 
    $friendly_filename = ucfirst( $friendly_filename );      
    return $friendly_filename;

My language is not listed in the plugin description, will it still replace my language characters?

Probably. Simply give it a try and see how it goes. This plugin doesn’t store anything in your site or anywhere, and makes no permanent changes to the site, disabling the plugin is enough to go back to WP default filename handling. Therefore trying and uninstalling the plugin if it doesn’t fit your needs it’s a completely safe and clean task.


15 de abril de 2021
Very useful and clean, strips every non standard character of all your filenames when uploading. Just activate and forget 🙂 Thanks to the dev for keeping the plugin updated, great job !
29 de agosto de 2019
If you answer this review i will appreciate it. I dont ask for Turkish translation, as the plugins supports spanish and some other langs then i ask about Turkish. Does the plugin support Turkish characters like ĞİÜÇŞıÖ ?
20 de mayo de 2019
Previene problemas con tildes, así como homogeneiza los nombres de archivos que a veces se muestran en el frontend, como con el plugin WP Better Attachments.
18 de diciembre de 2017
This plug-in do exactly what I except and there is no problem with Czech diacritics. If I was uploaded file name «příliš žluťoučký kůň úpěl ďábelské ódy.jpg» I’v got filename: /wp-content/uploads/2017/12/prilis-zlutoucky-kun-upel-dabelske-ody.jpg and Title příliš žluťoučký kůň úpěl ďábelské ódy. Great job.
24 de octubre de 2017
As others, I need my filenames to be simple for plugins, backup, different OS’es etc to work without a hiccup, but my title I’d like left alone. So if I choose to upload a file called «Test æøå ÆØÅ +(plus) !(udråbstegn).txt», I want a sane filename, but the original title where I insert the media… This plugin does that perfectly, where others also changes the title… Tested with Danish letters, works great 🙂
26 de marzo de 2017
Very good character replacements (ä->a, …) and to be safe a final filtering of the filename to prevent unwanted (and unknown) characters from being used. I tried a few plugins of this type, and this is definately the best.
Leer todas las 8 reseñas

Colaboradores y desarrolladores

«Clean Filenames» es un software de código abierto. Las siguientes personas han colaborado con este plugin.


«Clean Filenames» está traducido en 1 idioma. Gracias a los traductores por sus contribuciones.

Traduce «Clean Filenames» a tu idioma.

¿Interesado en el desarrollo?

Revisa el código , echa un vistazo al repositorio SVN o suscríbete al registro de desarrollo por RSS.

Registro de cambios


  • Changed priority for Gravity Forms integration.


  • Added additional support for files uploaded using single upload Gravity Forms fields. Thanks to my buddy David Smith! 🙂


  • Added filter scf_friendly_filename to allow additional changes to the filename before returning it to WP.
  • Minor changes to make code 100% compliant with WordPress Coding Standards. This doesn’t means any change in the plugin functionality, it’s just code cosmetic.


  • Added remove_accents() WP core function as first step instead of previous own custom replacement array for accents.


  • Minor coding standards improvements.


  • Fixed bug introduced in 1.0.9. Thanks to Edu from etmsoft for reporting it.


  • Added: All letters in the filename are set to lowercase to prevent issues with case insensitive systems.


  • Added support for Hebrew (letters will be replaced, puntuation and ligatures will be removed). e.g. ‘א’ will be replaced by ‘a’, and ‘װ’ will be removed from the filename.
  • After running all character replacement filters, a last filter is applied to ensure that the filename only contains letters, numbers, underscores, dashes, and dots. Any other character will be removed from the filename.


  • Plugin name changed from Sanitize Spanish Filenames to Clean Filenames to better reflect actual purpose of the plugin (originally it was created only for spanish characters).
  • Changed readme content and language.


  • Added: Replaces any ‘.’ character in the filename except for last one (for file extension) with ‘-‘.


  • Added: Replaces any ‘+’ in the filename with ‘-‘.


  • Many more characters and some symbols added. Cleaning not only spanish characters but from other languages too.


  • Fixed a little bug that causes ‘º’ replaced by ‘a’ instead of ‘o’, and same problem for ‘ª’.


  • Added characters ü Ü º ª that will be replaced with u U o a


  • Initial release.