ご注意!

この記事には PHP コードが含まれており、開発者を対象としています。このコードは便宜上提供していますが、コードのカスタマイズやサードパーティの開発についてはサポートを提供していません。

追加のガイダンスについては、WPBeginner の カスタムコードの追加方法に関するチュートリアル を参照してください。

閉じる

説明

wpforms_pro_fields_entry_preview_get_field_value_show_emptyフィルターは、エントリープレビューに空のフィールドを含めるかどうかを制御します。値がないフィールドを非表示にして、プレビューに表示されないようにするために使用できます。

パラメーター

$表示
(bool) (必須) エントリープレビューで空の値を持つフィールドを表示するかどうかを決定します。デフォルトは true です
$field
(array) (必須) フィールドデータ。
$form_data
(array) (必須) フォームデータ。

ソース

wpforms/pro/includes/fields/class-entry-preview.php

詳細情報

このフィルターは、エントリープレビューで空のフィールドに対して実行されます。デフォルトでは、$show の値が true であるため、空のフィールドは引き続き表示されます。このフィルターから false を返すと、空のフィールドはエントリープレビューから非表示になります。これにより、グローバルにまたは条件付きで特定のフィールドの空のフィールドを非表示にすることができます。

この例を使用して、エントリープレビューで空のフィールドを非表示にし、数量がゼロの支払い単一項目フィールドも空として扱い、プレビューから削除されるようにします。

add_filter( 'wpforms_pro_fields_entry_preview_get_field_value_payment-single_field', function( $value, $field, $form_data ) {
    // Single Item fields with Quantity enabled: we check if quantity is zero e.g, $10.00 × 0.
    // This is the exact substring that indicates a quantity of zero bcoz the multiplication sign is an HTML entity.
    $substring_to_check = '× 0';
 
    // We use strpos() for maximum compatibility to check if the substring exists.
    if ( strpos( $value, $substring_to_check ) !== false ) {
        // Return an empty string so the field is considered empty in the preview.
        return '';
    }
	
    // Otherwise, return it unchanged.
    return $value;
 
}, 10, 3 );

add_filter( 'wpforms_pro_fields_entry_preview_get_field_value_show_empty', function( $show, $field, $form_data ) {
    
    // Hide empty fields in Entry Preview.
    return false;
}, 10, 3 );