コンタクトフォーム7(Contact Form 7)指定ページのみjsとcssを読み込ませる方法。|WordPress

WordPressで、プラグインを使わずにContactForm7のjsとcssを指定ページのみ読み込ませる方法をご紹介します。

通常ContactForm7を導入すると、すべてのページでjsとcssが読み込まれその分表示速度も低下してしまいますが、この方法を使うことによってそれを防止することができます。

functions.phpの編集を行います。

子テーマが利用できる環境であれば子テーマのfunctions.phpを利用してください。

※必ずバックアップをとってから編集してください。

読み込むページが1ページのみの場合

function deregister_cf7_files() {
    if ( ! is_page(ページID) ) {
        wp_dequeue_style( 'contact-form-7' );
        wp_dequeue_script( 'contact-form-7' );
    }
}
add_action( 'wp_enqueue_scripts', 'deregister_cf7_files' );

もっと簡単なコード

ページのスラッグが”contact”というページのみ読み込ませたい場合は、次の通り。

2行目の’contact’の部分に任意のスラッグを入力します。

add_action( 'wp', function() {
  if ( is_page( 'contact' ) ) return;
  add_filter( 'wpcf7_load_js', '__return_false' );
  add_filter( 'wpcf7_load_css', '__return_false' );
});

読み込むページが複数ある場合

function deregister_cf7_files() {
    if ( ! is_page(array('ページID1','ページID2')) ) {
        wp_dequeue_style( 'contact-form-7' );
        wp_dequeue_script( 'contact-form-7' );
    }
}
add_action( 'wp_enqueue_scripts', 'deregister_cf7_files' );

まとめ

私は、問い合わせページが後々増えることを想定して、上記の「読み込むページが複数ある場合」のコードをはじめから利用しています。

作業自体は時間もかからず、すぐに実装できますので宜しければ参考にされてください。

最後までご覧いただきありがとうございました。

Web コード スピード プラグインなし

Googleアドセンス(Google Adsense)広告を遅延読み込み(LazyLoad)して表示速度を高速化する方法。

Googleアドセンスの読み込...

続きを見る

コード

サーバー内でzipファイルを解凍する方法

解凍したいファイルを「exam...

続きを見る

Web コード プラグインなし

wp-config.phpにとりあえず書いとくやつ。

define( 'WP_DEB...

続きを見る

Web Woocommerce Wordpress プラグイン

WordPressのユーザー情報をCSVエクスポート、インポートするプラグイン

「Import and exp...

続きを見る

植物

Astrophytum asterias アストロフィツム 兜丸

根強い愛好家が最も多いサボテン...

続きを見る

コメントを残す