我确信这很简单,但我没有很多关于php的经验。
以下代码在页面上放置了3个框,这些框是从具有特定类别的帖子中提供的。我想要做的是让它在页面上放置6个框 - 一行3,然后是另一行3。我更改了' posts_per_page' =>'排到6,虽然它允许显示6个帖子,但最后一个图像属于第3行,如下所示:
X X X
X X
X
知道如何让它发挥作用吗?
谢谢!
<?php
$args = array(
'category_name' => 'cafe',
'post__not_in' => $slider_arr,
'post_type' => 'post',
'posts_per_page' => 3
//'paged' => ( get_query_var('paged') ? get_query_var('paged') : 1),
);
query_posts($args);
$x = 0;
while (have_posts()) : the_post(); ?>
<?php if($x == 2) { ?>
<div class="home_blog_box home_blog_box_last">
<?php } elseif($x == 1) { ?>
<div class="home_blog_box home_second_blog_box">
<?php } else { ?>
<div class="home_blog_box">
<?php } ?>
<a href="<?php the_permalink(); ?>"><?php the_post_thumbnail('featured-blog'); ?></a>
<h3><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h3>
</div><!--//home_blog_box-->
<?php $x++; ?>
<?php endwhile; ?>
<?php wp_reset_query(); ?>
<div class="clear"></div>
答案 0 :(得分:0)
一旦达到$x
,请尝试将-1
重置为2
(由于结尾处的默认增量,因此为-1)。最后一项永远不会获得css类home_blog_box_last
,因为$x
只会不断增加。
<?php if($x == 2) { ?>
<div class="home_blog_box home_blog_box_last">
<?php $x = -1;
} elseif($x == 1) { ?>
<div class="home_blog_box home_second_blog_box">
<?php } else { ?>
<div class="home_blog_box">
<?php } ?>
另外,这会导致在中间行的第二个方框上出现问题(虽然你看不到它),因为它没有得到你认为它既没有的css类。