ページ表示の高速化?Contact Form 7のCSSやJSを、必要なページだけで読み込む方法

Contact Form 7のcssやjsは、フォームのない全ページにて読み込まれてしまいます。
無駄に読み込まれてしまうとページ表示の遅延にも繋がりますので、
コンタクトフォーム7を使用しているページだけで読み込むような設定をしてあげたいと思います。

基本的には、以下のコードをfunction.phpに加えてあげるだけ。


function my_contact_enqueue_scripts(){
wp_deregister_script('contact-form-7');
wp_deregister_style('contact-form-7');
if (is_page('contact')) {
	if (function_exists( 'wpcf7_enqueue_scripts')) {
        wpcf7_enqueue_scripts();
	}
	if ( function_exists( 'wpcf7_enqueue_styles' ) ) {
	wpcf7_enqueue_styles();
	}
}
}
add_action( 'wp_enqueue_scripts', 'my_contact_enqueue_scripts');

上記の例だと、4行目にある通り
ページスラッグが「contact」とあるページにだけ表示されるようになります。

なので、例えば複数ページにだけ表示させたいって場合は、
(is_page(‘contact’))の部分を以下の通りに変更するだけ。


<?php
if(is_page(array('ページID1','ページID2','ページID3'))){
echo('内容');
}else{}
?>

ページIDでもスラッグでも何でも大丈夫です。

快適なワードプレスライフを!