仅在填充时显示附加字段

Display an additional field only if it is filled

在 wordpress 网站上,商店元数据通过附加字段显示,代码如下:

add_action( 'woocommerce_product_meta_end', 'art_get_text_field_before_add_card' );
function art_get_text_field_before_add_card() {
    global $post;
    ?>
    <span class="text-field">
        Shelf life: <a><?php echo get_post_meta( $post->ID, '_custom_product_text_field', true ); ?> m.</a><br><br>
        Volume: <a><?php echo get_post_meta( $post->ID, '_custom_product_text_field2', true ); ?> gr.</a>
    
    </span>
    <?php
}

能否请您告诉我如何改进代码,以便只有在填充元数据时才在网站上显示“保质期”和“体积”行(_custom_product_text_field 和 _custom_product_text_field2)?

您可以通过多种方式做到这一点,这只是其中一种

add_action('woocommerce_product_meta_end', 'art_get_text_field_before_add_card');
function art_get_text_field_before_add_card() {
    global $post;
?>
    <span class="text-field">
        <?php if (!empty($text_field = get_post_meta($post->ID, '_custom_product_text_field', true))) : ?>
        Shelf life: <a><?= $text_field; ?> m.</a><br><br>
        <?php
        endif;

        if (!empty($text_field2 = get_post_meta($post->ID, '_custom_product_text_field2', true))) :
        ?>
        Volume: <a><?= $text_field2; ?> gr.</a>
        <?php endif; ?>
    </span>
<?php
}