Hola, lo corregí un poco y lo probé en mi servidor local, funcionan las tres opciones. Si insertás el valor "no" tiene que estar exactamente escrito de ese modo (en minúsculas) sino no te lo va a tomar.
Saludos
Código PHP:
Ver original<?php $link = get_post_meta($post->ID, 'link', true);
if ($link == "no") {?>
<h2 class="entry-title"><?php the_title(); ?></h2>
<?php } elseif ($link) { ?>
<h2 class="entry-title"><a href="<?php echo $link; ?>" rel="bookmark"><?php the_title(); ?></a></h2>
<?php } elseif (!$link) { ?>
<h2 class="entry-title"><a href="
<?php the_permalink
(); ?>" title="
<?php printf( esc_attr__
( 'Permalink to %s', 'twentyten' ), the_title_attribute
( 'echo=0' ) ); ?>" rel="bookmark">
<?php the_title
(); ?></a></h2>
<?php } ?>