web-dev-qa-db-ja.com

デフォルトのMediaelementプレーヤーをカスタマイズする

皆さん、おはようございます。

デフォルトのwordpressメディアエレメントプレーヤーで遊んでいて、間違いなくそれを愛しています。

私は自分の子テーマスタイルシートのいくつかのcss値を上書きすることでレイアウトを少しカスタマイズすることができました。
しかし、基本的にいくつかの!important cssルールを追加するだけなので、そうするのは好きではありません。必ずしもすべてのWebサイトページに適用する必要はないはずです。

これを実行するための代替方法を探して私は見つけた: http://wpsites.net/web-design/how-to-deregister-dequeue-style-sheets/

だから私の質問です:それは/ wp-includes /にあるwp-mediaelement.cssスタイルシートをデキュー/登録解除することは可能でしょうか? js/mediaelement /folder)をクリックして、代わりにカスタマイズしたスタイルシートを登録/エンキューしますか?

もしそうなら、どこで/どのように私は私自身のスタイルをキューに入れることができるようにwpが含まれているcssスタイルシートの$handleを手に入れることができますか? wpコーデックスのjsスクリプトに this/ のような$ハンドルのリストはありますか?


さらに、私がオーディオファイルのプレイリスト機能で遊んでいる間、私は私のページのhtmlコードでこれに気づいた:

<div class="wp-playlist-next"></div>
<div class="wp-playlist-prev"></div>

そしてこれをcssに追加することで:

.wp-playlist-prev {
width: 30px;
height: 30px;
background: red;}

.wp-playlist-next {
width: 30px;
height: 30px;
background: green;}

緑色のボックスと赤いボックスがコントロールバーの下に表示され、クリックすると実際に次の曲または前の曲が再生されます。
しかし、その機能をコントロールバーにシームレスに統合するためのプロセスは何でしょうか。

読んでくれてありがとう、これがここに私の最初の投稿です、私はそれが正しいやり方でやっていることを願っています。

1
nvby

さてそれで私は私のfunctions.phpファイルにこれを加えることによってmedialementプレーヤーをロードするページに選択的にいくつかのカスタムcssを追加することに成功しました:

function custom_player() {
    wp_enqueue_style(
        'custom-player',
        get_stylesheet_directory_uri() . '/wp-mediaelement.css'
    );
        $custom_css = "
                /*here goes the css*/
                ";
        wp_add_inline_style( 'custom-player', $custom_css );
}

add_action( 'wp_enqueue_scripts', 'custom_player' );

このようにwp_add_inline_style()を使うことで私は私のテーマスタイルシートにいくつかの!important cssを追加する必要はありません。
それは正しいやり方ですか?

[編集]
$ハンドルとして 'wp-mediaelement'を使用して上記のdequeue/deregisterメソッドを使用しようとしましたが、レイアウトが完全に壊れています。これは、mediaelementファイルがロードされたときに、その中に.cssファイルがなく、単に.jsスクリプトがあるためと考えられます。だからデキュー/登録解除メソッドを使用することによって私はいくつかの余分なCSSをロードするようになる...そしてそれはうまく再生されません。
しかし、今、それがどのように可能になるのでしょうか。デフォルトのcssファイルをどこかにキューに入れないでください。

2
nvby