Php Wordpress中同一查询中前四篇文章的不同html/css
我试图在Php Wordpress中同一查询中前四篇文章的不同html/css,php,html,css,wordpress,Php,Html,Css,Wordpress,我试图在archive.php 我在做这个简单的事情,我检查了全局$wp\u query变量 if ( have_posts() ) : if( 4 > $wp_query->current_post ) : the_title(); endif; while ( have_posts() ) : the_post(); get_template_part( 'content', get_post_format() ); endwhile;
archive.php
我在做这个简单的事情,我检查了全局$wp\u query
变量
if ( have_posts() ) :
if( 4 > $wp_query->current_post ) :
the_title();
endif;
while ( have_posts() ) : the_post();
get_template_part( 'content', get_post_format() );
endwhile;
else :
get_template_part( 'no-results', 'archive' );
endif;
这很好,在调用get\u template\u part()
问题是当我转到分页的下一页时,会显示一组不同的4篇文章。第二页的4篇新文章
我不想那样。我希望在我进入下一页或上一页时,第一页上出现的相同的4篇文章继续出现。我需要给前4篇文章一个不同的HTML结构,而不仅仅是CSS样式,我需要它们在整个分页过程中保持不变
我尝试使用pre_get_posts
和offset
更改主查询,但这给我的主题和管理面板带来了一系列问题,我决定不这样做
我怎样才能做到这一点
EDIT我解决这个问题的第一次尝试是进行第二次查询,并保持主查询不变,但是我无法在第一次查询中检查post\u计数
,查看它是否大于4,因为我总是每页只显示4篇posts\u
,这就是为什么我需要它们位于同一查询中,因为我将隐藏类别页面上不超过4篇文章的前4篇文章,并仅在包含4篇以上文章的类别页面上显示它们
编辑2使其更易于理解,如果它变得太凌乱
IF CATEGORY (QUERY) HAS MORE THAN 4 POSTS
DISPLAY 4 POSTS WITH CUSTOM HTML/CSS
THEN GET TEMPLATE PART AND DISPLAY THE REST OF THE POSTS WHILE EXCLUDING THE FIRST 4 POSTS BECAUSE DUPLICATES
ELSE
DISPLAY DEFAULT TEMPLATE PART
这里有一个我用来显示前四篇文章的循环,它有一个wp_reset_postdata,这可能是必需的,所以分页循环不受影响
<?php $rp_query = new WP_Query( 'showposts=4' );
if ( have_posts() ) : while ( $rp_query->have_posts() ) : $rp_query->the_post(); ?>
<?php endwhile; ?>
<?php wp_reset_postdata(); ?>
<? endif; ?>
解决方案已经内置,可以作为插件使用。
请尝试Blog Designer PRO插件-
致以最良好的祝愿,
Alkesh对于前四篇文章,尝试对该循环进行一个新的查询,以将其从分页/归档循环中分离出来:我对这个问题的第一次尝试是执行第二次查询并保留主查询,但这样我就无法检查第一次查询中的post_count
以查看它是否大于4,因为我总是只显示4posts\u per\u page
这就是为什么我需要它们在同一个查询中,因为我要将其隐藏在不超过4篇帖子的分类页面上。这是一个困难的问题!