How to hide get_theme_mod if field empty

I'm using: get_theme_mod to show various pieces of info from the theme customizer, in the following format:

a href=" ?php get_theme_mod( $name, $default ) ? "This is the link/a

I would like to hide the whole line if that particular customizer field is empty.

What could I wrap around the anchor to accomplish this?

Topic get-theme-mod php Wordpress

Category Web


Test if is not null we will show the content:

if (get_theme_mod($name, '') != NULL){
  // the content to show   
}

If is null we will show nothing.


Irrespective of your default value in the customizer setting, you could just compare the theme modification value to an empty string:

<?php    
$link = get_theme_mod( $name );
if ($link !== '' ) { 
?>
   <a href="<?php echo $link; ?> ">This is the link</a>
<?php 
} 
?>

Looking for an answer to displaying default text in place of a customizer set heading. In a funny roundabout way, thepost by @Otto gave me the idea of checking for an empty string.

<?php if( get_theme_mod( 'tcx_portfolio_intro') == '' ) : ?>
<div class="intro">
<h2><?php echo ('nothing here yet'); ?></h2>
</div>
<?php endif; ?>

$value = get_theme_mod( $name, $default );
if ($value !== $default) { 
?>
   <a href=" <?php echo $value; ?> ">This is the link</a>
<?php 
}

About

Geeks Mental is a community that publishes articles and tutorials about Web, Android, Data Science, new techniques and Linux security.