住所フィールドの追加スキームの作成方法

各国の住所フォーマットをカスタマイズしたいですか?WPFormsでは、デフォルトのUSとInternationalのフォーマットを超えて、カスタムの住所スキームを追加することができます。

このガイドでは、カナダ、オーストラリア、または必要なカスタムフォーマットのような国のための新しいアドレススキームを作成する方法を説明します。

アドレススキームの設定

はじめに、あなたのサイトにコードスニペットを追加する必要があります。カスタムコードの追加方法がわからない場合は、コードスニペットをサイトに追加する方法のガイドをご覧ください。

カナダの 住所フォーマットを作成するコード・スニペットです:

/**
 * Add new address field scheme for Canada
 *
 * @link https://wpforms.com/developers/create-additional-schemes-for-the-address-field
 */
function wpf_dev_new_address_scheme( $schemes ) {
    $my_form_id = 1000; // Replace with your form ID
    
    $schemes['canada'] = array(
        'label' => 'Canada',
        'address1_label' => 'Address Line 1',
        'address2_label' => 'Address Line 2',
        'city_label' => 'City',
        'postal_label' => 'Code Postal',
        'state_label' => 'Province',
        'states' => array(
            'BC' => 'British Columbia',
            'ON' => 'Ontario',
            'QC' => 'Quebec',
            'AB' => 'Alberta',
            'MB' => 'Manitoba',
            'NB' => 'New Brunswick',
            'NL' => 'Newfoundland and Labrador',
            'NT' => 'Northwest Territories',
            'NS' => 'Nova Scotia',
            'NU' => 'Nunavut',
            'PE' => 'Prince Edward Island',
            'SK' => 'Saskatchewan',
            'YT' => 'Yukon',
        ),
    );
    return $schemes;
}
add_filter( 'wpforms_address_schemes', 'wpf_dev_new_address_scheme', 10, 1 );

オーストラリアの 住所フォーマットの場合は、このコードを使用してください:

/**
 * Add new address field scheme for Australia
 *
 * @link https://wpforms.com/developers/create-additional-schemes-for-the-address-field
 */
function wpf_dev_new_address_scheme( $schemes ) {
    $schemes['australia'] = array(
        'label' => 'Australia',
        'address1_label' => 'Address Line 1',
        'address2_label' => 'Address Line 2',
        'city_label' => 'City',
        'postal_label' => 'Postal',
        'state_label' => 'State / Territory',
        'states' => array(
            'NSW' => 'New South Wales',
            'VIC' => 'Victoria',
            'QLD' => 'Queensland',
            'WA' => 'Western Australia',
            'SA' => 'South Australia',
            'TAS' => 'Tasmania',
            'ACT' => 'Australia Capital Territory',
            'NT' => 'Northern Territory',
        ),
    );
    return $schemes;
}
add_filter( 'wpforms_address_schemes', 'wpf_dev_new_address_scheme', 10, 1 );

新しいアドレススキームの使用

コードを追加したら、新しいフォームを作成するか、既存のフォームを編集します。フォームに住所 フィールドを追加し、フィールド設定でスキームの ドロップダウンを探します。新しい住所スキームがオプションとして表示されます。

をクリックすると、住所フォームフィールドのスキームドロップダウンから住所フィールドの追加スキームを選択できるようになります。

上記のどちらか(または両方)のスニペットで、新しい住所スキームが追加されました。住所フィールドのサブラベルを変更する方法を知りたいですか?住所フィールドのサブラベルを変更する方法の記事をお試しください。

よくある質問

Q: カスタム住所スキームを作成し、すべての国をリストアップすることはできますか?

A:もちろんです!独自の住所スキームを作成し、すべての国をリストアップするには、次のコード・スニペットを使用します。あなたのニーズに合わせてカスタマイズしてください。

Q: アドレススキームの特定のフィールドを非表示にするにはどうすればよいですか?

A: 米国および国際的なスキームでは、フォームビルダーのAdvancedタブを使用して、Address Line 2、Zip/Postal、およびCountryフィールドを非表示にすることができます。

スイッチを切り替えて、表示したくない国際住所スキームの特定のフィールドを非表示にします。

他のフィールドを隠す必要がある場合は、特定のフォームとフィールドIDをターゲットにしたCSSを使用できます。例えば

input#wpforms-41-field_6-state, 
label[for="wpforms-41-field_6-state"] {
    visibility: hidden;
}

スニペットの例では、フォームID41の Stateフィールドとラベル、およびフィールドID(Addressフィールド用)6を非表示にしています。これらのIDをあなたのIDに合わせて更新する必要があります。これらのIDの見つけ方についてヘルプが必要な場合は、こちらの便利なガイドをご覧ください

住所フィールドが必須フィールドである場合、住所フィールドがバリデーションに失敗するため、CSSでフィールドを隠すことはお勧めしません。

以上です!これで、住所欄の追加スキームを作成する方法がわかりました。次は、住所フィールドのラベルをカスタマイズする方法を学びたいですか?詳しくは、住所フィールドのサブラベルを変更するガイドをご覧ください。

リファレンス・フィルター

wpforms_address_schemes