Codex から子テーマを作成することを学びました。
add_action( 'wp_enqueue_scripts', 'theme_enqueue_styles' );
function theme_enqueue_styles() {
wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );
}
そして
function theme_enqueue_styles() {
$parent_style = 'parent-style';
wp_enqueue_style( $parent_style, get_template_directory_uri() . '/style.css' );
wp_enqueue_style( 'child-style',
get_stylesheet_directory_uri() . '/style.css',
array( $parent_style )
);
}
add_action( 'wp_enqueue_scripts', 'theme_enqueue_styles' );
子テーマのfunctions.php
ファイルで、親テーマに複数のスタイルシート(.css files
)がある場合の問題は解決しませんでした。 (私の場合、24のテーマには2つのstyle.css
とrtl.css
があり、さらに2つのeditor-style.css
とie.css
という名前の/ cssフォルダーにあります。上記の両方のstylesheets
をロードします。
この質問 は完了しましたが、私の問題は解決しませんでした。
メインのスタイルシートをgenericonのスタイルシートに依存させるという点で、14のスタイルシートのロード方法が異なります。これが問題であることは間違いありません。 (そうでない場合は、適切な詳細で質問を更新してください)
次のように、コードの最初のブロックでスタイルのエンキュー方法を変更できます。
wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css', array( 'genericons' ) );
特定のスタイルシートがどのように読み込まれるかについて、あなたは誤解しています。子テーマは、親スタイルシートを除くすべてのスタイルシートを親からロードします。これがシステムの構築方法です。現在、テーマによってではなく、デフォルトでWordpressによって読み込まれるスタイルシートがあります。
editor-style.css
TinyMCEエディタに自動的にロードされます。詳しい説明はコーデックスを見てください。
rtl.css
は、Webサイトがrtl言語に設定されている場合にのみロードされます。英語のようなltr言語では、スタイルシートはロードされません。これはWordpressでもデフォルトで行われています。ちょっと注意してください、なぜあなたはltrサイトにあなたのrtlスタイルシートをロードしたいでしょうか。それは一つのための資源の無駄です
ie.css
ieスタイルシートは、現在のブラウザがIE 8以前の場合にのみロードされます。それがすなわちスタイルシートの全体の目的です。 IE 8以前はメディアクエリをサポートしていないため、他のスタイルをそのブラウザに読み込む必要があります。
あなたの子関数に必要な only コードは以下の通りです。
function theme_enqueue_styles() {
wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css', array( 'genericons' ) );
wp_enqueue_style( 'child-style',
get_stylesheet_directory_uri() . '/style.css',
array( 'parent-style' )
);
}
add_action( 'wp_enqueue_scripts', 'theme_enqueue_styles' );