我经常使用Wordpress音频短代码将我的播客剧集嵌入我的帖子中:
[audio src="http://podcastsourcefile"]
不幸的是,默认音频播放器看起来很糟糕。我想用CSS重新设计它。我有一个模型,我可以发送给你看看它应该是什么样子,但这里是基本的要点:
这就是我希望玩家看起来像的样子:
(我有播放按钮的.png文件。)
答案 0 :(得分:2)
考虑一下:
?attr/tabLayoutSize
这样,您现在可以将整个mediaelement文件夹从wp-include中复制出来,将副本排入队列,而不是原始文件,然后在那里摆弄.css。标有//选项的行显示了如何根据访问者所在的页面使用不同的样式。找到它here
答案 1 :(得分:0)
有two filter hooks来解决这个问题。 一个开头,信息非常少,我们将快捷键整个短代码并返回我们自己的自定义HTML代码:
add_filter( 'wp_audio_shortcode_override', 'short1_so_23875654', 10, 4 );
function short1_so_23875654( $return = '', $attr, $content, $instances )
{
# If $return is not an empty array, the shorcode function will stop here printing OUR HTML
// $return = '<html code here>';
return $return;
};
到达的参数是:
Array
(
[0] => ''
[1] => Array
(
[src] => http://example.com/wp-content/uploads/file.mp3
)
[2] => ''
[3] => 1
)
在短代码功能结束时运行的另一个:
add_filter( 'wp_audio_shortcode', 'short2_so_23875654', 10, 5 );
function short2_so_23875654( $html, $atts, $audio, $post_id, $library )
{
return $html;
}
到达的参数是:
Array
(
[0] => <audio class="wp-audio-shortcode" id="audio-715-1" preload="none" style="width: 100%" controls="controls"><source type="audio/mpeg" src="http://example.com/wp-content/uploads/file.mp3?_=1" /><a href="http://example.com/wp-content/uploads/file.mp3">http://plugins.dev/wp-content/uploads/2013/10/04_discipline_64kb.mp3</a></audio>
[1] => Array
(
[class] => wp-audio-shortcode
[id] => audio-715-1
[preload] => none
[style] => width: 100%
)
[2] =>
[3] => 715
[4] => mediaelement
)
答案 2 :(得分:0)
我刚刚在主题编辑器中设置了custom.css样式。
音频短代码的值如下。在我的情况下,我更改了它,因此它不会受到任何Wordpress更新的影响(即使它比其他评论的PHP解决方案更脏)。您可以使用开发工具并按照自己的方式设置播放器样式(我的问题是我不需要100%宽度的播放器)。
.mejs-mute,
.mejs-duration-container,
.mejs-time,
.mejs-duration-container,
... {...}
答案 3 :(得分:0)
我将样式表另外添加到现有样式表中,就像我在this帖子中所解释的那样:
function enqueue_mediaelement(){
wp_enqueue_style( 'wp-mediaelement' );
//enqueue '/wp-content/my-theme/audio-player-styles.css'
wp_enqueue_style('my-audio-player', get_stylesheet_directory_uri() . '/audio-player-styles.css', array(), null );
}
add_action( 'wp_enqueue_scripts', 'my_enqueue_scripts' );
例如,如果您想为玩家背景着色,您现在可以将以下内容添加到 audio-player-styles.css :
.mejs-container, .mejs-container .mejs-controls, .mejs-embed, .mejs-embed body {
background-color: #B27D47;
}