Snow Monkey Formsの住所欄へ、郵便番号から都道府県・市区町村・町域を補完する設定を紹介します。フォーム送信や住所データの保存まで行う機能ではありません。
番地や建物名は手入力し、補完された住所も利用者が確認します。
初回の補完と、確認画面から戻った後の再補完は分けて確認する必要があります。旧稿の再接続コードは現在の配信コードで互換性を確認できないため、下記のとおり導入手順から取り下げています。
Snow Monkey Forms の設定・カスタマイズ方法はこちらにまとめています。
Snow Monkey Formsで郵便番号から住所を補完する基本設定
zipaddr-jpを有効にし、住所入力欄へIDを設定したうえで、使用するフォームの入力・確認・戻る操作を検証します。
プラグイン「zipaddr-jp」のインストール
プラグイン「zipaddr-jp」のインストールして有効化しておきましょう。

IDの登録
Snow Monkey Formの設定画面を開きます。
郵便番号のIDは半角小文字の zip にします。NAMEとは別の設定です。先頭の0を保持できるテキスト入力を使います。

この例では住所を都道府県・市区町村・町域・番地以降の4項目に分け、各IDを pref、city、area、addr にします。1つのID欄に空白区切りで並べず、各IDをページ内で1回だけ使用します。

これでIDの設定ができました。続いて実フォームの動作を確認します。
| 都道府県 | pref |
| 市区町村 | city |
| 町域 | area |
| 番地以降 | addr |
確認
あとは入力して確認してみましょう。
旧稿の検証では、郵便番号を入れると住所欄が補完されました。

2026年10月2日確認:Snow Monkey Forms 13.0.0・zipaddr-jp 1.45を実HTTP環境で組み合わせ、配布元のJavaScriptを読み込んで検証しました。入力エラー後と確認画面から戻った後の再補完を、1280px・375pxの表示幅で確認しました。旧画像は設定履歴なので、項目構成は本文に従ってください。
検証用フォームで既知の番号・存在しない番号・ハイフンの有無を試し、Tab操作とスマホでの住所編集を確認します。外部サービスへの通信が必要なため、通信失敗時にも手入力できるよう住所欄を読み取り専用にしないでください。戻す場合は変更前のフォームからIDと項目構成を復元します。プラグイン停止は他の住所フォームにも影響します。
配布元:zipaddr-jp、Snow Monkey Forms用配信コード。
郵便番号を変更したら番地も確認する
| 操作 | 確認結果・次の作業 |
|---|---|
| 100-0001を入力 | 東京都・千代田区・千代田が住所欄に入りました。 |
| 番地を手入力して確認→戻る | テスト用の番地が維持されました。 |
| 100-0002へ変更 | 町域が皇居外苑へ変わり、番地以降は空になりました。 |
| 郵便番号変更後 | 新しい住所を確認してから、番地・建物名を入力し直します。 |
郵便番号の変更で住所が再補完されると、手入力した番地以降の欄が空になる場合があります。郵便番号を確定してから番地・建物名を入力し、確認画面でも住所全体を読み直してください。
旧稿の再接続コードは、作り直された入力欄へ監視を接続するためのものでしたが、現在の配信版との互換性を確認できず取り下げました。住所の正しさや番地の保持を保証する機能ではありません。補完できない場合は手入力できるようにし、配信元への接続とブラウザーのエラーを確認してください。

同じページに住所フォームを2つ置く場合
この設定を2つのフォームへそのままコピーすると、zip・pref・city・area・addrのIDがページ内で重複します。
フォーム本体のIDを別にしても、入力欄のIDの重複は解消されません。
2026年10月3日、SMF 13.0.0の2つのフォームへ同じ入力欄IDを設定し、実HTTPページでzip・pref・city・addrが各2回出力されることを確認しました。
住所がどちらへ補完されるかは、この検証では確認していません。
このID設定を使う場合は住所フォームを別ページへ分け、各ページで郵便番号の入力、確認画面から戻った後の再入力、番地の手入力を確認します。
同じページに複数の住所フォームが必要な場合は、配信ライブラリーの対象欄指定を含む別の実装が必要です。
入力欄のIDだけをzip-1などへ変更しても、配信ライブラリーの対象欄設定と一致しなければ補完できません。旧稿の再接続コードもinput#zipを対象としていましたが、現在は取り下げています。
IDの付け替えだけで複数フォームへ対応したとは判断しないでください。
確認画面から戻った後の制限と旧コードの撤去
Snow Monkey Forms 13.0.0のソースでは、「戻る」や入力エラーの応答で入力欄を置き換えた後にイベントを通知します。初回の欄へ接続した住所補完が、置き換え後にも動くとは限りません。確認画面から戻って郵便番号を変える操作と、入力エラーを解消して再入力する操作を別々に試してください。
旧稿ではZip.Wgv()を呼ぶPHP・JavaScriptを掲載していました。2026年10月21日に配布元のzipaddrx.js(表示版7.277)とSnow Monkey Forms用配信コードを取得したところ、Wgvという関数名を確認できませんでした。内部関数名に依存した旧例を現行の導入手順には使えないため、コードを取り下げました。別の短縮名へ推測で置き換える方法も案内しません。
旧コードを設置済みの場合は、本記事由来のwp_enqueue_scripts処理でZip.Wgv()を呼んでいる部分だけを特定し、バックアップしたうえで停止します。他のフォーム処理まで削除しないでください。検証環境で配布元が案内する対応方法を確認できるまでは、住所を手入力できる状態を保ちます。初回の補完だけを確認して、確認・戻るまで対応済みとは判断しないでください。
過去の確認では公式コントローラーの保存応答や取得済み住所データを使った範囲もあり、現在の外部配信・実送信・メール配送を保証する結果ではありません。2026年10月21日はソースを再照合した段階で、現在の実フォームの再補完や画面操作は未検証です。通信できない場合も手入力で訂正できることを確認してください。
設定自体を戻す場合は変更前のフォームからIDと項目構成を復元します。プラグイン停止は他の住所フォームにも影響するため、利用箇所を確認します。参照した配信元はzipaddrx.jsです。配布元の更新に応じて再検証が必要です。
よくある質問:Snow Monkey Formsの住所補完
郵便番号から住所を自動で入れるには、どうしますか?
記事では、プラグイン「zipaddr-jp」と入力欄IDを設定し、初回補完と確認画面から戻った後の動作を個別に確認します。プラグインをインストールして有効化し、Snow Monkey Formの設定画面で各欄にIDを登録します。
IDは、どう登録しますか?
記事では、郵便番号のIDは半角小文字のzipにします(NAMEとは別の設定)。先頭の0を保持できるテキスト入力を使います。この例では住所を都道府県(pref)・市区町村(city)・町域(area)・番地以降(addr)の4項目に分け、1つのID欄に空白区切りで並べず、各IDをページ内で1回だけ使用します。
番地や建物名まで、自動で入りますか?
記事では、番地やマンション名までは無理なので、あとは手入力で住所を記入します。補完できない場合は手入力できるようにし、配信元への接続とブラウザーのエラーを確認してください。
郵便番号を変更したら、手入力した番地はどうなりますか?
記事では、郵便番号の変更で住所が再補完されると、手入力した番地以降の欄が空になる場合があります。郵便番号を確定してから番地・建物名を入力し、確認画面でも住所全体を読み直してください。
同じページに、住所フォームを2つ置けますか?
記事では、この設定を2つのフォームへそのままコピーすると、zip・pref・city・area・addrのIDがページ内で重複します。フォーム本体のIDを別にしても、入力欄のIDの重複は解消されません。このID設定を使う場合は住所フォームを別ページへ分け、入力欄のIDだけをzip-1などへ変更しても、配信ライブラリーの対象欄設定と一致しなければ補完できません。旧稿の再接続コードもinput#zipを対象としていましたが、現在は取り下げています。複数フォームが必要な場合は、別の実装が必要です。
確認画面から戻ったあとも、住所補完は使えますか?
旧稿の再接続コードはZip.Wgv()に依存していましたが、現在取得した配信コードではその関数名を確認できず取り下げました。初回補完だけで戻る操作にも対応したとは判断せず、手入力を残して配布元の対応方法を検証してください。
確認の範囲と、元に戻す方法は?
過去の記録はSMF 13.0.0・zipaddr-jp 1.45の隔離環境等での検証です。2026年10月21日は配信コードとSMFのソースを照合しました。現在の実フォーム・送信・メール配送・画面操作は未検証です。旧再接続コードは本記事由来の部分だけ停止し、IDや項目構成は変更前の設定から復元してください。



