我希望有人可以帮助解决我遇到的问题......
我正在构建一个Wordpress网站,我正在整理帖子部分。一切似乎还可以,当在帖子上使用精选图片时,它会在缩略图中显示:http://5.10.105.45/~learningforsusta/index.php/education-for-sustainable-development/然后很好地在这里的单个帖子中显示:http://5.10.105.45/~learningforsusta/index.php/efsc-post/example-post-1/
但是,在没有指定精选图片的帖子上,它似乎显示默认图片......
我的问题是,如何摆脱默认图片,如果没有精选图片,我希望它不显示任何内容......
以下是我用来完成全部操作的代码:
<div class="container">
<div class="row">
<div class="col-md-9">
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<div class="page-header">
<?php
$thumbnail_id = get_post_thumbnail_id();
$thumbnail_url = wp_get_attachment_image_src( $thumbnail_id, 'thumbnail-size', true );
$thumbnail_meta = get_post_meta( $thumbnail_id, '_wp_attachment_image_alt', true);
?>
<p class="featured-image"><img src="<?php echo $thumbnail_url[0]; ?>" alt="<?php echo $thumbnail_meta; ?>"></p>
<p><em>
By <?php the_author(); ?>
on <?php echo the_time('l, F jS, Y');?>
in <?php the_category( ', ' ); ?>.
<a href="<?php comments_link(); ?>"><?php comments_number(); ?></a>
</em></p>
</div>
<?php the_content(); ?>
<hr>
<?php comments_template(); ?>
<?php endwhile; else: ?>
<div class="page-header">
<h1>Oh no!</h1>
</div>
<p>No content is appearing for this page!</p>
<?php endif; ?>
</div>
<?php get_sidebar( 'blog' ); ?>
</div>
这里是来自functions.php文件的与缩略图相关的代码......
add_theme_support( 'post-thumbnails' );
set_post_thumbnail_size(150, 120, true);
我确定我错过了一些简单的东西,但我已经尝试过改变一些事情而我无法理解它!
非常感谢任何帮助......
谢谢,
肖恩
答案 0 :(得分:0)
请确保您没有附加到post_thumbnail_html
过滤器的任何功能,请查看您的functions.php
(最佳选择是搜索整个wp-content
} directory,apply *.php
filter以减少结果集)
确保您没有可以在幕后执行此操作的任何第三方插件,例如this一个。
答案 1 :(得分:0)
您可以尝试使用has_post_thumbnail()
功能并使用the_post_thumbnail()
<?php if ( has_post_thumbnail()): // Check if thumbnail exists ?>
<p class="featured-image">
<?php the_post_thumbnail('post-thumbnails'); ?>
</p>
<?php endif; ?>
答案 2 :(得分:-1)
在输出之前检查特色图像是否存在:
<?php
if( has_post_thumbnail() ):
$thumbnail_id = get_post_thumbnail_id();
$thumbnail_url = wp_get_attachment_image_src( $thumbnail_id, 'thumbnail-size', true );
$thumbnail_meta = get_post_meta( $thumbnail_id, '_wp_attachment_image_alt', true);?>
<p class="featured-image"><img src="<?php echo $thumbnail_url[0]; ?>" alt="<?php echo $thumbnail_meta; ?>"></p>
<?php endif;?>