我需要发布的第一篇帖子采用不同的样式。有没有一种方法可以让我查看帖子是否在前,然后更改其内容?我目前div
在我的所有帖子中都有一个。这需要替换为不同的div
.
显然以下代码可以提供帮助,但我不确定如何实现它:
<?php if (have_posts()) : $postCount = 1; while (have_posts()) : $postCount++; ?>
我是 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
变量中的帖子计数。我们只需要找到第一个帖子并将样式应用于该帖子。
通常,你会得到这样的东西:
<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
(第一篇文章),然后将class="YourSpecialClass"
部分添加为其<div>
属性。
更好的可读版本:
<?php if($postCount == 1) { ?>
//the first post -- style it
<?php } else { ?>
//other posts -- proceed normally
<?php } ?>
希望这可以帮助!