1

我的客户希望将她的主页更改为与此站点相似:http ://www.eatliverun.com/ 其中最新的帖子在一个专栏中全部位于顶部,而其他帖子在两个专栏摘录中。

她希望只显示一个最近的帖子,其余的以两列格式显示。我只是不确定如何正确地做到这一点。

她的网站位于http://pamelatable.com/

4

3 回答 3

1

将计数器集成到循环中可以轻松帮助您实现此布局。尝试如下操作(注意:“六列”类代表您在 12 列网格中的 2 列布局)

<?php $count = 1; ?>
    <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
        <?php if ($count == 1) { ?>
            <article>
                    <div>
                        <h2><a href="<?php the_permalink(); >"><?php the_title(); ?></a></h2>
                        <?php the_excerpt(); ?>
                    </div>
            </article>
            <?php $count++; ?>
            <?php } else { ?>
            <?php if($count % 2 == 0) { ?>  
            <div>
                <? } ?>
                <div class="six columns">
                    <article>
                        <div>
                            <h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
                            <?php the_excerpt(); ?>
                        </div>
                    </article>
                </div>
                <?php if($count % 2 == 1) { ?>
            </div>
            <? } ?>
            <?php $count++; ?>
        <? } ?>
    <?php endwhile; else: ?>
        <p><?php _e('Sorry, no posts matched your criteria.'); ?></p>
    <?php endif; ?>
于 2013-03-04T19:39:11.037 回答
0

只需在循环中添加一个计数器,并为第一次迭代设置不同的 html 样式。

<?php $i = 0; while ( have_posts() ) : the_post(); //inside loop ?>
    <?php if ($i++ == 0) : ?>
        <div>First Post</div>
    <?php else: ?>
        <div>Other Posts</div>
    <?php endif; ?>
<?php endwhile; ?>

在您的 index.php 或其他模板文件中^

于 2013-03-04T04:28:39.683 回答
0

只需使用计数器查看您所在的帖子编号。

<?php
if (have_posts()) {
    $i = 0;
    while (have_posts()) {
        the_post();

        if (++$i == 1) {
            echo '<div class="entry-large">';
        } else {
            echo '<div class="entry-small">';
        }
        the_content();
        echo '</div>'
    }
}
于 2013-03-04T04:29:59.193 回答