Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/263.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在WP_查询中组合2个数据数组?-Wordpress_Php_Wordpress_Wordpress Theming - Fatal编程技术网

Php 如何在WP_查询中组合2个数据数组?-Wordpress

Php 如何在WP_查询中组合2个数据数组?-Wordpress,php,wordpress,wordpress-theming,Php,Wordpress,Wordpress Theming,我想合并来自WP_查询的2个数组 要调用1数据,代码如下所示: $query = new WP_Query( array( 'post_type' => array('reply', 'topic') ) ); foreach ($query->posts as $p){ echo 'ID :'.$p->ID."<br />\r\n"; } $query1 = new WP_Query( ar

我想合并来自WP_查询的2个数组

要调用1数据,代码如下所示:

$query = new WP_Query( array(
        'post_type' => array('reply', 'topic')
    ) );

foreach ($query->posts as $p){     
    echo 'ID :'.$p->ID."<br />\r\n";
}
    $query1 = new WP_Query( array('post_type' => 'topic') );
    $query2 = new WP_Query( array('post_type' => 'reply') );
    $wp_query = new WP_Query();
    $wp_query->posts = array_merge($query1->posts, $query2->posts);

    foreach ($wp_query->posts as $p){
        echo 'ID :'.$p->ID."<br />\r\n";
    }
$query=newwp\u查询(数组('post\u type'=>'reply');
foreach($query->posts as$p){
回显“ID:”。$p->ID.“
\r\n”; }
如果使用变量,只需将其插入WP_查询参数。像这样:

$args1=array('post_type'=>'reply');
$query=新的WP\u查询($args1);
foreach($query->posts as$p){
回显“ID:”。$p->ID.“
\r\n”; }
但我的问题是,我想把它与
“post\u type”=>“topic”

例如,args1的输出

“帖子类型”=>“回复”:
身份证号码:519
身份证号码:517
身份证号码:516
身份证号码:515
身份证号码:514
身份证号码:500
身份证号码:499
身份证号码:485
身份证号码:479
身份证号码:478
和args2用于:

“帖子类型”=>“主题”:
身份证号码:498
身份证号码:484
身份证号码:483
身份证号码:474
我想把两者结合起来。我尝试了
array\u merge()
array\u combine()
但是输出不是我期望的。有什么解决办法吗


提前感谢。

您可以使用一个数组创建多个post\u类型,如下所示:

$query = new WP_Query( array(
        'post_type' => array('reply', 'topic')
    ) );

foreach ($query->posts as $p){     
    echo 'ID :'.$p->ID."<br />\r\n";
}
    $query1 = new WP_Query( array('post_type' => 'topic') );
    $query2 = new WP_Query( array('post_type' => 'reply') );
    $wp_query = new WP_Query();
    $wp_query->posts = array_merge($query1->posts, $query2->posts);

    foreach ($wp_query->posts as $p){
        echo 'ID :'.$p->ID."<br />\r\n";
    }
$query=新的WP\u查询(数组)(
'post_type'=>数组('reply','topic')
) );
foreach($query->posts as$p){
回显“ID:”。$p->ID.“
\r\n”; }

要查看更多详细信息,请查看。

我从以下链接找到了解决方案:

所以,从我所学到的。如果要组合数组,则需要进行另一个新的WP_查询()。1个WP_查询用于您的数据主题,1个WP_查询用于您的数据回复。并为结果制作另一个。代码如下所示:

$query = new WP_Query( array(
        'post_type' => array('reply', 'topic')
    ) );

foreach ($query->posts as $p){     
    echo 'ID :'.$p->ID."<br />\r\n";
}
    $query1 = new WP_Query( array('post_type' => 'topic') );
    $query2 = new WP_Query( array('post_type' => 'reply') );
    $wp_query = new WP_Query();
    $wp_query->posts = array_merge($query1->posts, $query2->posts);

    foreach ($wp_query->posts as $p){
        echo 'ID :'.$p->ID."<br />\r\n";
    }
$query1=新的WP\u查询(数组('post\u type'=>'topic');
$query2=新的WP_查询(数组('post_type'=>'reply');
$wp_query=新的wp_query();
$wp\u query->posts=array\u merge($query1->posts,$query2->posts);
foreach($wp\u query->posts as$p){
回显“ID:”。$p->ID.“
\r\n”; }

感谢所有回答我问题的人。

亲爱的MJ先生。我从这个链接找到了解决办法:感谢您的好意回答我的问题。