関連記事
Habakiriで脱jQuery
Habakiriはソースコード中に一箇所だけjQueryを使っているところがあります。
gnav.php内でハンバーガーメニューを操作するためのコードですが、個人的にハンバーガーメニューの必要性を特に感じなかったので削除しました。
functions.php
add_action('after_setup_theme', function() {
class Habakiri extends Habakiri_Base_Functions {
public function wp_footer() {
//
}
}
});
上記のコードでHabakiri_Base_Functionsのwp_footerと言うメソッドを無効化します。
jQuery自体を読み込まないようにするにはさらにfunctions.phpに以下のコードを記述します。
add_action('wp_enqueue_scripts', 'wpHeadCleanUp');
function wpHeadCleanUp()
{
wp_deregister_script('jquery');
}
jQueryの読み込みを止めるだけだと『Uncaught ReferenceError: jQuery is not defined』と言うエラーが開発ツールに表示されますが、
Habakiri_Base_Functions->wp_footer()を上書きすれば解決。
このままだとスマホサイズでハンバーガーメニューの名残の四角い枠が表示されるので、以下のCSSで非表示にしておきましょう。
#responsive-btn {
display: none !important;
}
ブログの脱jQuery化を進めていますが、あとはFeatherLight(Lightbox)の役割だけ代替できれば脱jQueryできそう。→代替できました。