您好,我正在使用下面的查询显示某个标记的7篇文章,但我遇到了一个问题。我想以一种方式设计第一篇文章,以不同的方式设计下一篇6篇文章。我注意到,它显示了第一篇文章的缩略图,之后显示了第一篇文章的标题,其他6篇文章后面只显示了标题。
我想完成的是显示查询中所有帖子的缩略图和标题,但我想以某种方式设置第一篇帖子的样式,并且以下六篇与第一篇不同。
我一直在反复思考这个问题,我做错了什么或遗漏了什么。
<?php
$queryObject = new Wp_Query( array(
\'showposts\' => 7,
\'post_type\' => array(\'post\'),
\'tag_slug__and\' => array(\'featured-music\'),
\'orderby\' => 1
));
// The Loop
if ( $queryObject->have_posts() ) :
$i = 0;
while ( $queryObject->have_posts() ) :
$queryObject->the_post();
if ( $i == 0 ) : ?>
<div id="first-post">
<a href="<?php the_permalink(); ?>" title="<?php printf(__( \'Read %s\', \'wpbx\' ), wp_specialchars(get_the_title(), 1)) ?>">
<?php the_post_thumbnail(\'sidethumbs\'); ?>
</a>
<?php endif; ?>
<div id="lateststitle"> <a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>">
<?php the_title(); ?>
</a>
</div>
<?php if ( $i == 0 ) : ?>
</div>
<?php endif;
$i++;
endwhile;
endif;
?>
最合适的回答,由SO网友:Eduardo Sánchez Hidalgo Urías 整理而成
您可以为div的类设置一个数组,然后将该变量的值作为一个类插入div.中,并在样式表中创建这些类。
在代码中,\\u缩略图位于if($i==0)内,因此它仅在$i==0时打印。然后if外的what只打印标题,我看不到哪里增加了$I,所以$I总是等于0。
这应该行得通。
$i = 0;
$class = array("first-post", "posts-below");
while ( $queryObject->have_posts() ) {
$queryObject->the_post();
if ( $i == 0 ) { ?>
<div class=<?php echo $class[0]; ?>>
<a href="<?php the_permalink(); ?>" title="<?php printf(__( \'Read %s\', \'wpbx\' ), wp_specialchars(get_the_title(), 1)) ?>">
<?php the_post_thumbnail(\'sidethumbs\'); ?>
</a>
</div>
<?php
$i++;
} else { ?>
<div class=<?php echo $class[1]; ?>>
<a href="<?php the_permalink(); ?>" title="<?php printf(__( \'Read %s\', \'wpbx\' ), wp_specialchars(get_the_title(), 1)) ?>">
<?php the_post_thumbnail(\'sidethumbs\'); ?>
<?php the_title(); ?>
</a>
</div>
<?php $i++;
}
} ?>