Loop Split two Columns

时间:2017-01-05 作者:Jamal

如何通过WP\\u查询将一个循环拆分为两列,而不必使用两个循环,例如,左侧可能是“a和B”类的帖子,右侧可能是“C和D”类的帖子。问题是,理论上可以使用不同的参数为查询创建两个不同的循环,但页面导航只考虑一个循环的结果(因为页面导航应该适用于两列)。谢谢

enter image description here

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

如何通过WP\\u查询将循环拆分为两列,而不必使用两个循环

这些都是可能的if 有条件的

例如,有可能在左侧是“A和B”类员额,在右侧是“C和D”类员额。

对当然

问题是,理论上可以使用不同的参数为查询创建两个不同的循环,但页面导航只考虑一个循环的结果(因为页面导航应该适用于两列)。

您还可以逐个获取两个查询并合并结果。只是一种选择。

$enough = 20;
$args = array(
    \'posts_per_page\'    => $enough,
    \'post_type\'         => array(\'post\');
    \'category__in\'      => array(\'A\',\'B\',\'C\',\'D\'),
    ... // some more 
);

// query
$q = new WP_Query( $args );
while( $q->have_posts() ) : $q->the_post();
global $post;
if(in_category(array(\'A\', \'B\') , $post)) {      
?>
<div class="left">
<?php
    the_title(\'<title>\',\'</title>\',true);
    the_content(); ?>
</div>
}else{ ?>

<div class="right">
<?php
    the_title(\'<title>\',\'</title>\',true);
    the_content(); ?>
</div>
<?php
}

... // block
endwhile;
如果愿意,可以使用CSScolumn-count: 2 还有两个查询,每个查询将给出10个结果。

顺便说一句,我接受了一个限制,即任何文章都不能在同一个多个类别中包含。

SO网友:rudtek

如果我这样做,我会说:

<?php 
// args  
$args = array(
    \'posts_per_page\'    => -1,
    \'post_type\'     => \'post\',
);
// query
$the_query = new WP_Query( $args );

 if( $the_query->have_posts() ):
    $column1 ="";
    $column2 ="";
    while( $the_query->have_posts() ) : $the_query->the_post();
     if ($critera=\'TRUE\') {
       $column1 =. \'<div>\'.get_title().\'</div>\'; //your own code here
     }
     if ($critera=\'FALSE\') {
       $column2 =. \'<div>\'.get_title().\'</div>\'; //your own code here
     }
    echo \'<div class="row">\';
    echo \'<div class="column left">\'.$column1.\'</div>\';
    echo \'<div class="column right">\'.$column2.\'</div>\';
    echo \'</div>\';  //ends row
    php endwhile;
endif;
wp_reset_query();    // Restore global post data stomped by the_post(). ?>  
不过,这只是一个示例,因为我不确定您使用什么条件来决定每篇文章将位于哪一列,而您没有发布代码。您需要确保您的代码也在条件中,并且您使用的任何主题都有行和列(类名等)。这个想法是存在的,这对我来说绝对有效。

相关推荐

Custom loop not working

因此,我创建了一个自定义循环,在该循环中,我的自定义帖子类型的帖子将出现,并且在其中,我向meta“layout\\u meta\\u box”声明了值“synosis”。自定义帖子类型正在工作,但元框值不工作。我做错了什么?<?php /* Template Name: Archief Synopsis Template Post Type: algemeen */ get_header(); $args = array( \'pos