先月、私は最初のWebサイトを作成しました。これまではコーディングの知識がなかったので、学んだことはすべて私にとって新しいことでした。
先週の私の問題は、私の子供のテーマの.cssファイル(そしてphp。ファイルですが、それは別の問題です)が、それらの親の.cssファイルを上書きしていないことです。私は一週間中解決策を探そうとしてきましたが、今のところ成功していません。
これは私が子のfunctions.phpファイルに入れたコードです
=================================================== =============(5) - このコードでは、子テーマを最後に読むことができますが、他のcss(他のものに頼る必要がありますか?)ではエラーが発生します/
<?php
function my_theme_enqueue_styles() {
$parent_style = 'adforest-original-modern'; // This is 'adforest-style' for the AdForest theme.
wp_enqueue_style( $parent_style, get_template_directory_uri().'/css/modern.css' );
wp_enqueue_style( 'child-style',
get_stylesheet_directory_uri().'/modern.css',
array( $parent_style ),
wp_get_theme()->get('1.0.0'));
}
add_action( 'wp_enqueue_scripts', 'my_theme_enqueue_styles' );
function wp_67472455() {
wp_dequeue_style( 'adforest-theme-modern' );
wp_deregister_style( 'adforest-theme-modern' );
}
add_action( 'wp_print_styles', 'wp_67472455', 100 );
?>
=================================================== ========
(6) - このコード作業の後で、誰もこのコードで潜在的な問題を参照できませんか。
<?php
function my_theme_enqueue_styles() {
/* =================== modern.css ==========================*/
$parent_style = 'adforest-original-modern'; // This is 'adforest-style' for the AdForest theme.
wp_enqueue_style( $parent_style, get_template_directory_uri().'/css/modern.css' );
wp_enqueue_style( 'child-style',
get_stylesheet_directory_uri().'/modern.css',
array( $parent_style ),
wp_get_theme()->get('1.0.0'));
/* =================== default.css ==========================*/
wp_enqueue_style( 'defualt-original-color', get_template_directory_uri().'/css/colors/defualt.css' );
wp_enqueue_style( 'child-defualt-color',
get_stylesheet_directory_uri().'/defualt.css',
array( 'defualt-original-color' ),
wp_get_theme()->get('1.0.0'));
}
add_action( 'wp_enqueue_scripts', 'my_theme_enqueue_styles', 100 );
function wp_67472455() {
/* =================== modern.css ==========================*/
wp_dequeue_style( 'adforest-theme-modern' );
wp_deregister_style( 'adforest-theme-modern' );
/* =================== default.css ==========================*/
wp_dequeue_style( 'defualt-color' );
wp_deregister_style( 'defualt-color' );
}
add_action( 'wp_print_styles', 'wp_67472455', 1 );
?>
(私を正しい方向に導いてくれた@ D。Danに感謝します!)
これは私にとっては完璧に機能しました。親テーマを更新した後でも、子の.cssファイルはまだアクティブで、同等の親の.cssファイルを上書きします。
このコードは複数の.cssファイル用です
<?php
function my_theme_enqueue_styles() {
/* =================== modern.css ==========================*/
$parent_style = 'adforest-original-modern'; // This is 'adforest-style' for the AdForest theme.
wp_enqueue_style( $parent_style, get_template_directory_uri().'/css/modern.css' );
wp_enqueue_style( 'child-style',
get_stylesheet_directory_uri().'/modern.css',
array( $parent_style ),
wp_get_theme()->get('1.0.0'));
/* =================== default.css ==========================*/
wp_enqueue_style( 'defualt-original-color', get_template_directory_uri().'/css/colors/defualt.css' );
wp_enqueue_style( 'child-defualt-color',
get_stylesheet_directory_uri().'/defualt.css',
array( 'defualt-original-color' ),
wp_get_theme()->get('1.0.0'));
/* =================== smart_wizard_theme_arrows.css ==========================*/
wp_enqueue_style( 'defualt_smart_wizard_theme_arrows', get_template_directory_uri().'/css/colors/smart_wizard_theme_arrows.css' );
wp_enqueue_style( 'child-defualt_smart_wizard_theme_arrows',
get_stylesheet_directory_uri().'/smart_wizard_theme_arrows.css',
array( 'defualt_smart_wizard_theme_arrows' ),
wp_get_theme()->get('1.0.0'));
/* =================== forest-menu.css ==========================*/
wp_enqueue_style( 'original-forest-menu', get_template_directory_uri().'/css/forest-menu.css' );
wp_enqueue_style( 'child-forest-menu',
get_stylesheet_directory_uri().'/forest-menu.css',
array( 'original-forest-menu' ),
wp_get_theme()->get('1.0.0'));
/* =================== responsive-media-modern.css ==========================*/
wp_enqueue_style( 'responsive-original-modern', get_template_directory_uri().'responsive-media-modern.css' );
wp_enqueue_style( 'child-responsive-modern',
get_stylesheet_directory_uri().'/responsive-media-modern.css',
array( 'responsive-original-modern' ),
wp_get_theme()->get('1.0.0'));
}
add_action( 'wp_enqueue_scripts', 'my_theme_enqueue_styles', 100 );
function wp_67472455() {
/* =================== modern.css ==========================*/
wp_dequeue_style( 'adforest-theme-modern' );
wp_deregister_style( 'adforest-theme-modern' );
/* =================== default.css ==========================*/
wp_dequeue_style( 'defualt-color' );
wp_deregister_style( 'defualt-color' );
/* =================== smart_wizard_theme_arrows.css ==========================*/
wp_dequeue_style( 'adforest-wizard-arrows' );
wp_deregister_style( 'adforest-wizard-arrows' );
/* =================== forest-menu.css ==========================*/
wp_dequeue_style( 'forest-menu' );
wp_deregister_style( 'forest-menu' );
/* =================== responsive-media-modern.css ==========================*/
wp_dequeue_style( 'responsive-media-modern' );
wp_deregister_style( 'responsive-media-modern' );
}
add_action( 'wp_print_styles', 'wp_67472455', 1 );
?>
これらの行をmy_theme_enqueue_styles関数に追加してください。
wp_dequeue_style( 'adforest-theme-modern' );
wp_deregister_style( 'adforest-theme-modern' );
この名前の下に追加されているのです。そして、あなたはすでにそれがあなたのcssの前にロードされるように、親cssを待ち行列に入れました。
編集: 試す:
function my_theme_enqueue_styles() {
$parent_style = 'adforest-theme-modern'; // This is 'adforest-style' for the AdForest theme.
wp_enqueue_style( $parent_style, get_template_directory_uri().'/css/modern.css' );
wp_enqueue_style( 'child-style',
get_stylesheet_directory_uri().'/modern.css',
array( $parent_style ),
wp_get_theme()->get('1.0.0'));
}
add_action( 'wp_enqueue_scripts', 'my_theme_enqueue_styles' );
function wp_67472455() {
wp_dequeue_style( 'adforest-theme-modern' );
wp_deregister_style( 'adforest-theme-modern' );
}
add_action( 'wp_print_styles', 'wp_67472455', 100 );
優先順位を上げながら2つの別々の関数を実行してみてください。
function my_enqueue_style_one() {
wp_register_style( 'style1', get_template_directory_uri() . '/style1.css' );
wp_enqueue_style( 'style1' );
}
add_action( 'wp_enqueue_scripts', 'my_enqueue_style_one', 10 );
function my_enqueue_style_two() {
wp_register_style( 'style2', get_stylesheet_directory_uri() . '/style2.css' );
wp_enqueue_style( 'style2' );
}
add_action( 'wp_enqueue_scripts', 'my_enqueue_style_two', 20 );
また、追加のコントロールのためにスタイルシートをキューに入れる前に登録してみてください。
if ( ! wp_style_is( 'style1', 'enqueued') ) { ... }