Comprobar si un campo personalizado está vacío

Si queremos imprimir (mostrar) los campos personalizados que hayamos creado únicamente cuando los hemos llenado (y por tanto evitarnos el código HTML que comúnmente les acompaña en los templates), aquí tenemos el código para hacerlo.

<?php $precio = get_post_meta($post->ID, "precio", true);
if ($precio !=''){
?>
	<div id="listar-precio">
		<h3>Precio</h3>
		<?php echo get_post_meta($post->ID, "precio", true); ?>
	</div>
<?php } ?>

Primero me hago con lo que hubiere en en campo “precio”, luego miro que no esté vacío y permito que se imprima.

En este caso, si estamos creando un magazine sobre conciertos y nuestros campos personalizados son del tipo:

  • Lugar: (valor que le hayamos dado al campo)
  • Fecha: (valor que le hayamos dado al campo)
  • Precio: (valor que le hayamos dado al campo)

Si en un cierto artículo no hemos rellenado esos campos por la razón que sea, no nos aparecerá la lista vacía. Tendríamos que repetir el código para cada elemento.

Comentarios
  1. Lucas Cepeda

    Muy buen truco.
    Pero en realidad, con la primera línea ya tenemos el campo personalizado en la variable $precio, no?

    No hace falta volver a utilizar get_post_meta, simplementer hacer un echo de $precio. Más rápido! :)

    Escrito el31/03/2010
  2. Hey Lucas, buena, se me había pasado!

    Escrito el01/04/2010
  3. Richard Olán

    En ton-ces como quedaría lucas?

    Escrito el02/04/2010
  4. echo $precio (en vez del segundo get_post_meta).

    Te economizas una llamada a la base de datos.

    Escrito el02/04/2010
  5. Richard Olán

    Listo sería así.

    ID, “precio”, true);
    if ($precio !=”){
    ?>

    Precio
    ID, “precio”, true); ?>

    Escrito el07/05/2010
  6. zdga

    que taran hablando ni se entiende

    Escrito el23/05/2010

DEJA TU COMENTARIO