将归档页面2、3等设置为不同于filve.php的样式的最佳实践是什么?

时间:2011-06-04 作者:shawn

我有一个自定义的帖子类型“视频”,在第一页上,我的第一个视频样式与页面上的下一个视频不同。基本上,我以大格式显示第一个视频,而页面上的其余视频都很小。

问题:

在视频帖子类型的第2页、第3页等,我不想在页面顶部有一个大视频,而是想遵循我的标准样式。

最好的方法是什么?

目前,我正在使用重写规则为帖子类型的“paged”提供第二个模板页。我宁愿不再使用这种方法,因为它更需要维护。

如果我使用If\\u paged之类的支票。。然后我发现我必须在模板上复制大量代码。希望有一个简单的方法来确定循环中的第一篇帖子,并设置样式,然后继续。。。接受任何想法

谢谢

2 个回复
最合适的回答,由SO网友:Milo 整理而成

针对您的评论,$wp_query->current_post 正在运行。请注意,它的索引为零:

<?php

if (have_posts()) :
while (have_posts()) : the_post();

    if($wp_query->current_post==0):
        echo "this is the first post";
    else:
        echo "this is post number " . ($wp_query->current_post + 1);
    endif;

endwhile;
endif;

?>

SO网友:Michael

我认为没有什么比使用is_paged() 连同计数器;

循环之前:<?php $counter = 1; ?>

在循环中:

<?php if( $counter == 1  && !is_paged() ) : 
$counter++; ?>
/*code for the first post with large video*/
<?php else : ?>
/*code for all other posts*/
<?php endif; ?> 
重复代码的数量显然取决于循环的现有结构。

结束

相关推荐

Enable page templates. How?

基本问题,但我想启用页面模板。我有一个启用了页面模板的主题。我切换到了另一个模板,但没有更改模板的选项,即使在创建新页面时也是如此。如何打开此选项?我在抄本和论坛上找到了根,但找不到。