こんにちは、Juntechです。
今回は小ネタです。
WordPressで自作テーマを作成するにあたってつまずいた点を共有していきます。
今回は「wp_enqueue_scriptsが発火しない」です。
始まりはphpcsからのお叱り
header.phpでスタイルシートを読み込んでいたらphpcsに怒られてしまいました。
Stylesheets must be registered/enqueued via wp_enqueue_style
どうやらheaderに直接linkタグを埋め込んでいるとこのお叱りが来るらしいです。
wp_enqueue_style経由で読み込みなさいよ、とのこと。
wp_enqueue_styleを使ってみた...がしかし
そこでfunctions.phpにこう書いてみました。
function theme_name_scripts() {
wp_enqueue_style( 'my-style', get_template_directory_uri() . '/style.css', array(), '1.0.0', false );
/* Bootstrap CSS */
wp_enqueue_style( 'bootstrap-css', '//stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css', array(), '4.4.1', false );
}
add_action( 'wp_enqueue_scripts', 'theme_name_scripts' );
が、、反映されない。
デバッグした感じ、明らかにcssが読み込んでもらえてません。
解決
小1時間苦戦した末、header.phpのheadタグ内に下記を記述することで解決しました。
<?php wp_head(); ?>
スタイルを読むプロセスが動いてなかったってこと??
どの記事を読んでも「add_actionするんやで」としか書いてなかったので、
そもそもheader.phpに何を入れなきゃいけないかがすっぽり抜けていました。
今回はここまで。
WordPressテーマ作成にあたって、入門の入門レベルの勉強しかしなかったので、
今後もこういう初歩的なつまずきが多そうです。。
同じように手探りで自作テーマ作成に挑戦する人は多いと思います。
今後もこういった些細なネタを発信していきます。