1

Twitter Bootstrap をベースにした Wordpress テーマを作成しています。Bootstrap のレスポンシブ レイアウト.row-fluidでは、ページの 100% にまたがり、1 行内に 12 の「スパン」を持つことができます。

<div class="row-fluid">
    <?php query_posts('category_name=feature-articles&showposts=6'); ?> 
    <?php while (have_posts()) : the_post(); ?>

        <div class="span4">
        <div class="main-thumb"><?php echo get_the_post_thumbnail(($page->ID) , 'main-thumb'); ?></div>
        <a href="<?php the_permalink(); ?>"><h3 class="title"><?php the_title(); ?></h3></a>
        <p class="excerpt"><?php
            $my_excerpt = get_the_excerpt();
            if ( $my_excerpt != '' ) {
                // Some string manipulation performed
            }
            echo $my_excerpt; // Outputs the processed value to the page
            ?></p>


    <?php endwhile; ?></div>

これにより、2 つの異なる行にまたがる 6 つの「span4」が作成されますが、ループのため、元の div を閉じて、.row-fluid3 つの投稿が作成された後に別の div を開く方法はありません。

簡単にするために、投稿 1、2、および 3 を取得し、次に.row-fluiddiv を閉じて別の投稿を作成し、次に投稿 4、5、および 6 を取得したいと考えています。これは少しループ操作で可能ですか?

4

1 に答える 1

4

ループにカウンターを配置し、3 に達したら、クローズ/オープン タグを追加する必要があります。エラーを回避するために、ループの先頭にも追加if(have_posts())しました (投稿がない場合にメッセージを出力することもできます)。

<div class="row-fluid">

    <?php $i = 0 ?>
    <?php query_posts('category_name=feature-articles&showposts=6'); ?>
    <?php if(have_posts()) : while (have_posts()) : the_post(); ?>

        <?php if( $i == 3 ) : ?>
            </div>
            <div class="row-fluid">
        <?php endif; ?>

        <div class="span4">

        <div class="main-thumb">
            <?php echo get_the_post_thumbnail(($page->ID) , 'main-thumb'); ?>
        </div>
        <a href="<?php the_permalink(); ?>">
            <h3 class="title"><?php the_title(); ?></h3>
        </a>
        <p class="excerpt">
<?php
            $my_excerpt = get_the_excerpt();
            if ( $my_excerpt != '' ) {
                // Some string manipulation performed
            }
            echo $my_excerpt; // Outputs the processed value to the page
?>
        </p>

        <?php $i++ ?>

        <?php endwhile; ?>
    <?php endif; ?>

</div> 
于 2012-10-24T11:25:37.350 に答える