web-dev-qa-db-ja.com

子テーマの新しい.cssファイルを子テーマのstyle.cssのスタイルをオーバーライドする方法

私は自分の子テーマに別のrespond.cssファイルを作成したいのですが、メディアクエリが子テーマのデフォルトのstyle.cssのスタイルをオーバーライドするのに問題があります。

私は<link rel="stylesheet" href="<?php echo get_stylesheet_directory_uri(); ?>/responsive.css" type="text/css" media="screen"/>コードの後に​​<?php wp_head(); ?>を置こうとしましたが、これはうまくいきません。

メディアクエリはstyle.cssの末尾に追加する必要はありません。すでに大きく、非常に混乱します。

2
user1794295

あなたは あなた自身のスタイルシートをエンキューすることができます あなたの子供のテーマのfunctions.phpファイルにこれを追加することで:

function wpa_custom_css(){
    wp_enqueue_style(
        'wpa_custom',
        get_stylesheet_directory_uri() . '/responsive.css'
    );
}
add_action( 'wp_enqueue_scripts', 'wpa_custom_css', 999 );

これはあなたの子テーマディレクトリにあるファイルresponsive.cssをロードします。優先度は非常に低く(999)設定されているため、同じアクションでキューに入れられる可能性がある他のスタイルの後に表示される可能性が高くなります。

2
Milo

wp_enqueue_script で受け入れられる3番目のパラメータは$ dependenciesです。

function wpa_115637(){
    wp_enqueue_style(
        'wpa_custom',
        get_stylesheet_directory_uri() . '/responsive.css',
        'main_style' // use the handle that you used when you enqueued the main stylesheet 
    );
}
add_action( 'wp_enqueue_scripts', 'wpa_115637' );
1
helgatheviking