Même si j'ai essayé de modifier la largeur de la taille du lecteur intégré [embed]
qui ressemble à ceci using [embed width="50" height="50"]
, mais peu importe la valeur que j'utilise, cela ne changera pas la taille. WordPress dit ici que cela devrait fonctionner.
Que puis-je faire pour changer la taille? Je veux juste montrer le bouton de lecture, rien d'autre.
Et je ne veux pas changer la largeur du contenu comme cela est suggéré dans d'autres posts sur ce site. Je veux que ce changement affecte uniquement le lecteur intégré.
Je suppose que vous parlez d’incorporer les fichiers audio , comme:
[embed]http://s.w.org/images/core/3.9/AintMisbehavin.mp3[/embed]
Le gestionnaire audio embed est enregistré dans wp_maybe_load_embeds()
et filtré par le filtre wp_embed_handler_audio
.
Donc, dans WP_Embed::shortcode()
ceci génère:
[audio src="http://s.w.org/images/core/3.9/AintMisbehavin.mp3" /]
ainsi, certaines des méthodes mentionnées ici pour le shortcode [audio]
devraient fonctionner.
Puisque nous utilisons le shortcode [embed]
, nous pourrions également ajouter notre propre wrapper pour prendre en charge le paramètre width:
add_filter( 'wp_embed_handler_audio', function( $html, $attr, $url, $rawattr )
{
if( isset( $rawattr['width'] ) )
{
$html = sprintf(
'<div class="wpse_audio_embed_wrapper%s" style="width:%dpx">%s</div>',
$class = 1 * $rawattr['width'] < 120 ? ' audio-button-only' : '',
$rawattr['width'],
$html
);
}
return $html;
}, 10, 4 );
Ici, nous utilisons le $rawattr
puisque nous voulons uniquement vérifier la saisie de l'utilisateur.
Nous ajoutons la classe audio-button-only au wrapper si la largeur est inférieure à 120.
Nous injectons ensuite le style en ligne après la feuille de style mediaelement pour masquer les parties pertinentes comme durée et volume:
add_action( 'wp_enqueue_scripts', function()
{
wp_add_inline_style(
'mediaelement',
' .audio-button-only .mejs-volume-button,
.audio-button-only .mejs-duration,
.audio-button-only .mejs-currenttime,
.audio-button-only .mejs-horizontal-volume-slider
{ display: none !important; };'
);
} );
Cela pourrait bien sûr être ajouté à la feuille de style correspondante.
Nous pourrions également étendre cette approche pour prendre en charge d’autres mini-versions avec les classes correspondantes.
Nous pouvons maintenant utiliser le paramètre width dans [embed]
pour les fichiers audio:
[embed width="28"]http://s.w.org/images/core/3.9/AintMisbehavin.mp3[/embed]
Sortie:
Bouton jouer:
Bouton Pause:
_ {Testé sur le thème des vingt seize.} _