以下を確認しよう!
・(2)のコードより前に jquery を読み込んでいるか
・ajaxzip2.js は html のソースで指定した部分にあるか
wp-content/themes/※hogehoge/ajaxzip2/ajaxzip2.js
・テーマは子テーマじゃないこと
子テーマだったら ‘template_url’ を ‘stylesheet_directory’ に変更
#Deja vu, so many lies. Familiar spirits behind your eyes.
お世話になります。
・(2)のコードより前に jquery を読み込んでいるか
→ /head前に
・(2)のコードより前に jquery を読み込んでいるか
<?php wp_enqueue_script(‘jquery’); ?>
<?php wp_enqueue_script(‘ajaxzip2’, ‘http://※hogehoge/wp-content/themes/※hogehoge/ajaxzip2/ajaxzip2.js’); ?>
を記入しています。
・ajaxzip2.js は html のソースで指定した部分にあるか
wp-content/themes/※hogehoge/ajaxzip2/ajaxzip2.js
→ これも間違いなく置いています。
・テーマは子テーマじゃないこと
子テーマだったら ‘template_url’ を ‘stylesheet_directory’ に変更
→ これの意味が分かりません(勉強不足です)
ちなみにテーマはオリジナルで制作したものでindex.php に書き込んでいます。
特に問題がなけれればサイトURLを提示して見てもらうと早いかも。ローカルテストとかじゃ無理だけども…
テーマの functions.php に以下を追加:
add_action( 'wp_print_scripts', 'my_print_scripts' );
function my_print_scripts() {
wp_enqueue_script( 'jquery' );
wp_enqueue_script(
'ajaxzip2',
get_bloginfo( 'stylesheet_directory' ) . '/ajaxzip2/ajaxzip2.js',
array( 'jquery' ), false, true
);
}
?>
index.php の body 閉じタグ前に以下を記述
<script type="text/javascript">
//<![CDATA[
jQuery(function(){
AjaxZip2.JSONDATA = "<?php bloginfo('template_url') ?>/ajaxzip2/data";
jQuery('#zip').keyup(function(event){
AjaxZip2.zip2addr(this,'pref','addr');
});
});
//]]>
</script>
で、どうでしょう。
テーマがオリジナルなため functions.php を設けていません。
模様替えもしないつもりのなで不便は感じていません。
つまりindex.phpとstyle.cssのみの構成なんです。
これでは出来ないのでしょうか?
お世話になっています。
随分とたちましたがまだ諦めずに挑戦しているのですがダメな状態です。
functions.php を立ち上げて ご教示の分を追加記入
index.php の body閉じタグ直前にも記入しておりますが
うんともすんとも言いません。
他に考えられる部分は有るのでしょうか?
通りすがりです。
自分もJavaScript 等が動かず困った時にはよくやるのですが、
- 「そのページのソースをtest.html 等として保存して、先ずそのtest.htmlで動くようになるまでソースをいじる」
- 「サンプルコード等があれば、sample.html等として作って、先ずこれで動く事を確認する」
等というやり方を行ってみると、早く解決できるかもしれません。
kzさんの
‘index.php の body 閉じタグ前に以下を記述’
を追加すれば動きました。(functionは追加せず)
どうもありがとうございました。
tomohiroさんの意見も参考にさせていただきます。