4
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Welcartで郵便番号から県名、住所を自動入力

Last updated at Posted at 2014-10-13

WordPressのECサイト構築プラグイン、「Welcart」で郵便番号入力から自動で県名、住所を入力してくれるようにします。
と言っても、自力でどうにかする訳ではなく以下のAPIにお世話になります。
ajaxzip3 - 郵便番号検索API, JSONP対応 これで郵便番号のメンテナンス作業から解放されます。 - Google Project Hosting

##フィルターを追加
アドレスフォームを出力する部分のフィルターで以下のコードを追加します。
フォーム毎にinput:name名が違うので、それを合わせてやります。

func.php
add_filter( 'usces_filter_apply_addressform', 'zip2addr_jp', 10, 3);
function zip2addr_jp($formtag, $type, $data){
  $pref_name = $type.'[pref]';
  $addr_name = $type.'[address1]';
  $js =<<<END
<script src="http://ajaxzip3.googlecode.com/svn/trunk/ajaxzip3/ajaxzip3.js" charset="UTF-8"></script>
<script>
jQuery(function($) {
  $('#zipcode').change(function() {
    AjaxZip3.zip2addr(this, '', '$pref_name', '$addr_name');
  });
});
</script>
END;
  return $formtag.$js;
}

httpsで使う場合は

<script src="http://ajaxzip3.googlecode.com/svn/trunk/ajaxzip3/ajaxzip3.js" charset="UTF-8"></script>

の部分を

<script src="https://ajaxzip3.googlecode.com/svn/trunk/ajaxzip3/ajaxzip3-https.js" charset="UTF-8"></script>

と、してください。
###追記
住所を自動入力した後フォーカスが住所欄にあるのですが、これを次の番地入力欄に移動させるやり方がわかりません。

4
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?