Dans WordPress 3.6, en utilisant le nouveau shortcode [audio]
, je peux ajouter un lecteur pour un fichier .mp3 comme celui-ci:
[audio src="http://example.com/audio_files/test.mp3"]
Toutefois, si le fichier .mp3 comporte des lettres majuscules dans l'extension, cela ne fonctionne pas:
[audio src="http://example.com/audio_files/test_capital.MP3"]
Si je spécifie le format dans le shortcode, il échoue quand même, mais d'une manière différente:
[audio mp3="http://example.com/audio_files/test_capital.MP3"]
En regardant la fonction wp_audio_shortcode
dans "wp-includes/media.php", je peux voir où cela se produit.
Est-ce comportement intentionnel pour WordPress 3.6? Existe-t-il des solutions de contournement (autres que le changement de nom du fichier)? Devrais-je déposer un rapport de bogue?
Ce bogue a été corrigé dans le noyau de WordPress 3.7.
Non, apparemment pas. Jusqu'à ce que ce comportement soit modifié dans version 3.7 , vous pouvez ajouter ce filtre au fichier functions.php
de votre thème pour inclure des extensions supplémentaires.
Modifié: j'ai mis à jour le filtre avec le meilleur code suggéré dans les commentaires.
function my_custom_audio_extensions( $exts ) {
//merge array of upper case extensions with default array
return array_merge( $exts, array_map('strtoupper', $exts) );
}
add_filter( 'wp_audio_extensions', 'my_custom_audio_extensions' );
function my_custom_audio_extensions( $exts ) {
//merge array of lower case defaults, uppercase and first letter capitalized
return array_merge( $exts, array_map('strtoupper', $exts), array_map('ucfirst', $exts));
}
add_filter( 'wp_audio_extensions', 'my_custom_audio_extensions' );