2017-05-17 9 views
0

私のWordPressページの特定のページに適用されるページテンプレートがあります。通常、私の他のスクリプトのすべてに対して、私はそれらを私のfooter.phpに入れ、そこから美しくロードします。この特定のページでは、このページでのみ実行する必要のあるスクリプトをロードしたいと思います。だから私のテンプレートでは、私はこのようにそれを含める:残念ながらWordPressテンプレートにjQueryスクリプトを含める

<?php 
/** 
* Template Name: Template 
*/ 
?> 
<?php get_header(); ?> 

<script src="<?php echo get_template_directory_uri(); ?>/js/teacher-signup.js"></script> 

<?php get_footer(); ?> 

私だけのようなエラーを取得することを行っているとき:

Uncaught TypeError: $(...).whatever is not a function

を特定のテンプレート上のスクリプトのカップルを含むようにWordpressの中にいくつかの方法がありますのみ?または私は何かを逃していますか?あなたのfooter.phpのテーマ

+1

あなたにもフッターにはjQueryをロードしています?そうであれば、ヘッダーに移動することもできます。 jQueryがロードされる前にjQueryラッパーを使用しようとしているようです。 – Baruch

+0

はい、この例ではフッターにロードしていましたが、ヘッダーでも試しましたが、同様のエラーが発生しました。以下の回答は私の問題を解決しましたが。ありがとう! – Triphys

答えて

1

レジスタの上に置くことができます

<?php if (is_page(1)) : ?> 
<script src="<?php echo get_template_directory_uri(); ?>/js/teacher-signup.js"></script> 
<?php endif; ?> 

例えば、特定のページID /ページスラグ中is_page()条件ならばあなたが作ることができ、事前

1

感謝wpのようなスクリプトは、以下を推奨します:

wp_register_script('your_file_name', get_template_directory_uri() . '/assets/js/some_file.js', false, null, true); 
あなたがしたい場合は、ページテンプレート名の条件を追加することができます
if (is_page('page_name')) { 
     wp_enqueue_script('your_file_name'); 

     } 

その特定のページ/テンプレートに登録されたスクリプトをキューより

if (is_page_template("template_name.php') 
+0

これも私の問題を解決しました:) – Triphys

関連する問題