• Resuelto zinc1314

    (@zinc1314)


    Buenas a todos!

    Traigo una serie de valores con advanced custom field, el problema es que cuando el usuario no indica ningún valor (campo no obligatorio), me trae por defecto el número 0.

    Este es el código:

    <?php global $wp_query; $postid = $wp_query->post->ID; echo get_post_meta($postid, 'telefono_3', true); ?>

    Hay alguna manera de poner un if, para que si el valor es 0 no muestre nada? Algo similar?

    Muchas gracias

Viendo 1 respuesta (de un total de 1)
  • Hola,
    en lugar de mostrar directamente el resultado de la función get_post_meta(), almacénalo en una variable y luego comprueba lo que tiene esa variable. Por ejemplo:

    <?php
    global $wp_query;
    $postid = $wp_query->post->ID;
    $telefono_3 = get_post_meta($postid, 'telefono_3', true);
    if ( ! empty( $telefono_3 ) ) {
        echo $telefono_3;
    }
    ?>

    Al usar true como tercer parámetro de la función get_post_meta(), el resultado devuelto es un string, una cadena de texto, por eso hacemos la comprobación con empty( $cadena ).
    No lo he probado pero creo que debería funcionar.

    Un saludo

Viendo 1 respuesta (de un total de 1)
  • El debate ‘Si el valor es cero’ está cerrado a nuevas respuestas.