Я думаю, это то, что вам нужно. Сложно сказать. Я полагаю, что первая часть оператора if
- это то, что выполняется, если нет пользовательской мета-записи? Я не мог сказать. Вот в чем проблема. Оператор if
выполнял первую часть, если есть значение, возвращаемое для пользовательского мета-сообщения, в противном случае он выполнял вторую часть, используя пустую строку в качестве href. (Первая часть запускается, если пользовательское значение либо не существует, либо является чем-то, кроме пустой строки). Изменение оператора if
для проверки, является ли он пустым, лучше, потому что он будет перехватывать его, если он не существует (возвращает false) или если он существует, но является пустой строкой (объявленной, но не определенной).
Я отметил то, что отредактировал, комментариями (всего одна строка).
<?php
$recentPosts = new WP_Query();
$recentPosts->query('showposts=3');
?>
<?php while ($recentPosts->have_posts()) : $recentPosts->the_post(); ?>
<div <?php post_class() ?> id="post-<?php the_ID(); ?>">
<?php
$attribute = the_title_attribute();
$title = the_title();
$key = 'NewPostLink';
$newLink = get_post_meta( $post->ID, $key, TRUE );
/* EDITED */ if (empty($newLink)) {
$theLink = get_permalink ($post->ID );
if (has_post_thumbnail()) {
$image = get_the_post_thumbnail( $post->ID );
echo '<div class="thumbnailbox"><div class="thumbnail"><a href="'.$theLink.'">'.$image.'</a></div></div>';
echo '<h2><a href="'.$theLink.'" rel="bookmark" title="Permanent Link to '.$attribute.'">'.$title.'</a></h2>';
} else {
echo '<h2><a href="'.$theLink.'" rel="bookmark" title="Permanent Link to '.$attribute.'">'.$title.'</a></h2>';
}
} else {
$theLink = $newLink;
if (has_post_thumbnail()) {
$image = get_the_post_thumbnail( $post->ID );
echo '<div class="thumbnailbox"><div class="thumbnail"><a href="'.$theLink.'">'.$image.'</a></div></div>';
echo '<h2><a href="'.$theLink.'" rel="bookmark" title="Permanent Link to '.$attribute.'">'.$title.'</a></h2>';
} else {
echo '<h2><a href="'.$theLink.'" rel="bookmark" title="Permanent Link to '.$attribute.'">'.$title.'</a></h2>';
}
}
?>
<small><?php the_time('F jS, Y') ?></small>
<div class="entry">
<?php the_excerpt(); ?>
</div>
</div>
<?php endwhile; ?>