はじめに
フォームの名前フィールドのサブラベルを変更したいですか? 小さなPHPスニペットを使えば、とても簡単にできます。
WPFormsでは、Nameフィールドは3つの形式で表示できます:
- シンプル(単一のフィールドを表示するので、サブラベルはない)
- 最初 最後
- ファースト ミドル ラスト
このチュートリアルでは、PHPのコード・スニペットを使ってサブラベルを変更する方法の基本を紹介します。
フォームの作成
まずはフォームを作成し、Nameフィールドを含むフィールドを追加します。
フォームの作成にヘルプが必要な場合は、こちらのドキュメントをご覧ください。
スニペットの追加
アドレス・フィールドのサブラベルを変更するには、このスニペットをサイトに追加する必要がある。
あなたのサイトにスニペットを追加する方法と場所についてサポートが必要な場合は、こちらのチュートリアルをご覧ください。
/** * Customize name field properties. * * @link https://wpforms.com/developers/how-to-change-sublabels-for-the-name-field/ */ function wpf_dev_name_field_properties( $properties, $field, $form_data ) { // Change sublabel values $properties[ 'inputs' ][ 'first' ][ 'sublabel' ][ 'value' ] = __( 'First Name', 'plugin-domain' ); $properties[ 'inputs' ][ 'middle' ][ 'sublabel' ][ 'value' ] = __( 'Middle Initial', 'plugin-domain' ); $properties[ 'inputs' ][ 'last' ][ 'sublabel' ][ 'value' ] = __( 'Last Name', 'plugin-domain' ); return $properties; } add_filter( 'wpforms_field_properties_name' , 'wpf_dev_name_field_properties', 10, 3 );
このスニペットは、すべてのフォームのすべてのサブラベルを変更します。
これで完了です!これで「名前」フィールドのサブラベルの変更は完了です!必須フィールドの必須フィールド記号を変更したいですか? 必須フィールドのインジケータを変更する方法をご覧ください。
関連
フィルタ参照:wpforms_field_properties
よくあるご質問
Q: 1つのフォームだけ変更することはできますか?
A:もちろんです。特定のフォームのサブラベルだけを変更したい場合は、このスニペットを使用してください。フォームIDの見つけ方については、こちらのガイドをご覧ください。
/** * Customize name field properties. * * @link https://wpforms.com/developers/how-to-change-sublabels-for-the-name-field/ */ function wpf_dev_name_field_properties( $properties, $field, $form_data ) { // Only process this snippet on the form ID 123 if ( absint( $form_data[ 'id' ] ) !== 123 ) { return $properties; } // Change sublabel values $properties[ 'inputs' ][ 'first' ][ 'sublabel' ][ 'value' ] = __( 'First Name', 'plugin-domain' ); $properties[ 'inputs' ][ 'middle' ][ 'sublabel' ][ 'value' ] = __( 'Middle Initial', 'plugin-domain' ); $properties[ 'inputs' ][ 'last' ][ 'sublabel' ][ 'value' ] = __( 'Last Name', 'plugin-domain' ); return $properties; } add_filter( 'wpforms_field_properties_name' , 'wpf_dev_name_field_properties', 10, 3 );
スニペットでわかるように、フォームIDのチェックを次のように追加するだけである。 if ( absint( $form_data[ 'id' ] ) !== 123 ) { return $properties; }
スニペットの残りの部分は、すべてのフォームを使った例とまったく同じです。