如果是第一篇文章,风格就不同了——Wordpress


If first post, style differently — Wordpress

我需要发布的第一篇文章采用不同的风格。有没有一种方法可以让我先看看帖子,然后改变它的内容?我目前在所有的帖子中都有一个div。这需要用不同的div来代替。

显然,下面的代码可以提供帮助,但我不确定如何实现它:

<?php if (have_posts()) : $postCount = 1; while (have_posts()) : $postCount++; ?>

我是WordPress的新手,所以不完全确定这是怎么回事?

在您的代码后面附加以下代码:

<?php if (have_posts()) : $postCount = 1; while (have_posts()) : $postCount++; ?>
<?php if($postCount == 2) { ?>
  // SOMETHING TO DO WITH FIRST POST
<?php } else { ?>
  // SOMETHING TO DO WITH ALL OTHER POSTS
<?php } ?>
<?php if (have_posts()) : $postCount = 0; while (have_posts()) : $postCount++; ?>

上面的代码将创建一个$postCount变量,并在每次循环时递增。请注意,我已将其更改为从0开始,而不是从1开始。

我们现在有了$postCount变量中的post计数。我们只需要找到第一个帖子,并将样式应用于该帖子。

通常情况下,你会有这样的东西:

<div class="post" id="post-<?php the_ID(); ?>">

将其更改为:

<div <?php if($postCount == 1) { ?>class="YourSpecialClass"<?php } 
else { ?>class="post"<?php } ?> id="post-<?php the_ID(); ?>">

上面的代码将检查$postCount是否为1(第一个post),然后添加class="YourSpecialClass"部分作为其<div>属性。

可读性更好的版本:

<?php if($postCount == 1) { ?>
    //the first post -- style it
<?php } else { ?>
    //other posts -- proceed normally
<?php } ?>

希望这能有所帮助!