Lors d’une migration d’un blog WordPress, il arrive souvent d’être confronté à un problème d’accents dans les images qui ont été ajoutées dans vos articles.
Pour corriger ce problème et réécrire le nom des fichiers envoyés, copiez simplement le code ci-dessous dans le fichier functions.php de votre thème ou celui de votre thème enfant:
function wpartisan_sanitize_file_name( $filename ) { $sanitized_filename = remove_accents( $filename ); // Convert to ASCII // Standard replacements $invalid = array( ' ' => '-', '%20' => '-', '_' => '-', ); $sanitized_filename = str_replace( array_keys( $invalid ), array_values( $invalid ), $sanitized_filename ); $sanitized_filename = preg_replace('/[^A-Za-z0-9-\. ]/', '', $sanitized_filename); // Remove all non-alphanumeric except . $sanitized_filename = preg_replace('/\.(?=.*\.)/', '', $sanitized_filename); // Remove all but last . $sanitized_filename = preg_replace('/-+/', '-', $sanitized_filename); // Replace any more than one - in a row $sanitized_filename = str_replace('-.', '.', $sanitized_filename); // Remove last - if at the end $sanitized_filename = strtolower( $sanitized_filename ); // Lowercase return $sanitized_filename; } add_filter( 'sanitize_file_name', 'wpartisan_sanitize_file_name', 10, 1 );
Et voilà, il ne vous reste plus qu’à tester… 😉