-1

以下在循环中生成 2 个帖子,其中包含周围的 div 行流体。然后它会在之后创建另外 2 个帖子。为什么是这样?编辑:上面的代码按要求:

<?php  get_header(); ?>
<section class="clearfix" id="home">

<div class="row-fluid">

<?php $count = 1; ?>
<?php if ( have_posts() ) : ?>
<?php while ( have_posts() ) : the_post(); ?>   
<div class="span4">
    <div class="wrap-title">
        <div class="position">
            <div class="title"><?php the_title();?></div>
            <div class="tags"><?php echo $cats; ?> </div>   
        </div>
    </div>  
</div>
<?php if($count == 2) {
    echo '</div>';
}?>
<?php $count++; ?>
<?php endwhile; ?>

我在这里发布与 wordpress 相对,因为我预计它是一个 PHP 语法错误,可能是计数变量或 row-fluid div 所在的位置。

4

1 回答 1

1

尽管我会以不同的方式创建代码,但我认为解决您的问题的方法是将您的代码修改为:

<?php  get_header(); ?>
<section class="clearfix" id="home">

<?php $count = 1; ?>
<?php if ( have_posts() ) : ?>
<?php while ( have_posts() ) : the_post(); ?>   
<?php if($count % 2 == 0) {
  <div class="row-fluid">
}?>
<div class="span4">
    <div class="wrap-title">
        <div class="position">
            <div class="title"><?php the_title();?></div>
            <div class="tags"><?php echo $cats; ?> </div>   
        </div>
    </div>  
</div>
<?php if($count % 2 == 0) {
    echo '</div>';
}?>
<?php $count++; ?>
<?php endwhile; ?>

编辑:

您说它之后还会产生 2 个帖子 - 这就是为什么您将</div>在前两个帖子之后添加,然后您将继续打印。解决方案是使用上面的代码 - 使用% 打印只有两个帖子使用此代码:

<?php  get_header(); ?>
<section class="clearfix" id="home">


<div class="row-fluid">

<?php $count = 1; ?>
<?php if ( have_posts() ) : ?>
<?php while ( have_posts() ) : the_post(); ?>   
<div class="span4">
    <div class="wrap-title">
        <div class="position">
            <div class="title"><?php the_title();?></div>
            <div class="tags"><?php echo $cats; ?> </div>   
        </div>
    </div>  
</div>
<?php if($count == 2) {
    break;
}?>
<?php $count++; ?>
<?php endwhile; ?>
</div>

但是上面的代码可以优化为不搜索所有帖子,但它应该可以按原样工作。

于 2013-04-10T13:45:33.907 回答