Contsct Form7のスクリプトやスタイルは全頁で読み込まれますが、不要なページで読み込まれることで、ページが重くなり、サイトの速度を低下させたり、することもございます。
Contsct Form7のスクリプトやスタイルをフォームがあるページでだけで読み込む方法を解説いたします。
手順1 コンタクトフォームがあるページのIDを調べる
ワードプレスのすべての投稿や固定ページには、数字の一意のIDがついています。
ContactForm7があるページのIDを調べるには、そのページの編集ボタンをおして、URLの部分を見ます。
URLが下記のようになっている場合
https://wp-doctor.jp/blog/wp-admin/post.php?post=1245&action=edit
この投稿のIDは1245となります。
手順2 コンタクトフォームが無いページでContact Form7のスクリプトを読み込まないようにする
テーマのFunctions.phpに下記のように記載することで先ほど調べたID以外のページで、Contsct Form7のスクリプトやスタイルを読み込まないようにします。
function load_contactform7_on_specific_page(){ if(! is_page(1245) ) { wp_dequeue_script('contact-form-7'); wp_dequeue_style('contact-form-7'); } } add_action( 'wp_enqueue_scripts', 'load_contactform7_on_specific_page' );
まず、 ‘wp_enqueue_scripts’にフックして、ワードプレスがスクリプトを読み込む処理に割り込みます。
if(! is_page(1245) ) でコンタクトフォームがないページ(あるページのIDが1245ですのでそれ以外のページ)の場合は、
wp_dequeue_script(‘contact-form-7’);
wp_dequeue_style(‘contact-form-7’);
でContsct Form7のスクリプトやスタイルを読み込まないようにしています。
※1245の部分は御社のサイトのコンタクトフォームがあるページのIDに書き換えてくださいませ