エントリービューと通知でフィールドラベルを非表示にする方法

エントリビューおよびメール通知において、コンテンツ、HTML、ページ区切り、セクション区切りフィールドのような非入力フィールドのフィールドラベルを非表示にしますか? このチュートリアルでは、wpforms_html_field_name フィルターを使用した簡単なコードスニペットを使用して、エントリビューおよびメール通知でフィールドラベルを非表示にする方法を説明します。

コードスニペットの追加

フィールドラベルを非表示にするには、サイトにカスタムコードスニペットを追加する必要があります。カスタムコードの追加にヘルプが必要な場合は、コードスニペットの追加に関するチュートリアルを参照してください。

以下に示すコードスニペットは、単一エントリの印刷ビューでコンテンツフィールドのラベルを非表示にします。

/*
 * Hide Field Labels in Entry Views and Notifications.
 *
 * @link https://wpforms.com/developers/how-to-hide-field-labels-in-entry-views-and-notifications
 *
 */
function wpf_hide_field_label( $field_label, $field, $form_data, $context ) {

	if ( $context !== 'single-print' ) { 
		return $field_label;
	}

	$field_type = ! empty( $field['type'] ) ? $field['type'] : '';

	if ( $field_type === 'content' ) {
		$field_label = ''; // Leave this empty to hide the label value
	}

	return $field_label;
}

add_filter( 'wpforms_html_field_name', 'wpf_hide_field_label', 10, 4 );

スニペットのカスタマイズ

このスニペットを特定のニーズに合わせて変更できます。

1. 変更を別の領域に適用するには、$context の値を変更します。利用可能なオプションは次のとおりです。

  • single-print: 単一エントリ印刷ビュー
  • single-entry: 単一エントリビュー
  • email-html: メール通知

2. 異なるフィールドタイプを対象にするには、field_type の値を変更します。利用可能なオプションは次のとおりです。

  • content
  • html
  • divider
  • pagebreak

これで、コンテンツを表示したまま、非入力フィールドのラベルを正常に非表示にすることができました。