在WordPress中显示特色图像或附加图像或默认值


Displaying featured image or attached image or default in WordPress

我正在尝试显示一个图像,以便在我的WP主页上至少显示一个默认图像。这就是我想到的:-

                    <a href="<?php the_permalink();?>">
                    <?php 
                    if ( has_post_thumbnail() ) {
                        the_post_thumbnail();
                    } elseif (
                            $thumbnail_id = get_post_meta($post->ID, 'thumbnail_id', true); echo 'wp_get_attachment_image($thumbnail_id, '')';
                            )
                         else {
                        <?php echo '<img src="<?php bloginfo('template_directory'); ?>/images/default-featured.png" alt="<?php the_title(); ?>" />'; ?>
                    <?php } ?>
                    </a>

理论是,如果一张特色图片被分配给一篇帖子,首先显示这个,否则显示一张附加图片(来自帖子内容的一张),否则显示我的默认图片。出现错误"expected;"。为什么?

您可以尝试以下代码:

<?php $thumbnail_id = get_post_meta($post->ID, 'thumbnail_id', true); ?>
<a href="<?php the_permalink(); ?>">
    <?php 
    if ( has_post_thumbnail() ) {
        the_post_thumbnail();
    } else if ($thumbnail_id != "") {
        $thumbnail_id = get_post_meta($post->ID, 'thumbnail_id', true);
        echo wp_get_attachment_image($thumbnail_id, '');
    } else {
       echo '<img src="'.get_template_directory_uri().'/images/default-featured.png" alt="'.get_the_title().'" />';
    }
    ?>
</a>