Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/259.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.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将查询添加到foreach循环(WP)内的变量_Php_Wordpress - Fatal编程技术网

PHP将查询添加到foreach循环(WP)内的变量

PHP将查询添加到foreach循环(WP)内的变量,php,wordpress,Php,Wordpress,我试图为每个URL变量创建一个数组。对于这个变量的每个实例Extras,我需要创建一个数组,该数组稍后用作我的WP查询的meta_查询 现在,我有以下代码,但它没有将数组正确添加到meta_查询中 $extras = $_GET["extras"]; if(!empty($extras)) { foreach ($extras as $extra) { $args14 .= array('key' => 'extras', 'value' =&

我试图为每个URL变量创建一个数组。对于这个变量的每个实例
Extras
,我需要创建一个数组,该数组稍后用作我的WP查询的meta_查询

现在,我有以下代码,但它没有将数组正确添加到meta_查询中

$extras = $_GET["extras"];

if(!empty($extras)) {
    foreach ($extras as $extra) {
        $args14 .= array('key' => 'extras', 'value' => $extra, 'compare' => 'LIKE' );
    }   
} 

$loop = new WP_Query(array( 
                        'meta_query' => array(
                            'relation' => 'AND',
                            $args3,$args4,$args5,$args6,$args7,$args8,$args9,$args10,$args11,$args12,$args13,$args14
                        ),
                    ) 
                );
其他参数工作正常,并正确地添加到meta_查询中,但我在foreach循环中遇到了问题


有谁能给我指出正确的方向吗?提前谢谢

您可以这样做:

它可能需要更新,具体取决于:

  • $\u GET[“extras”]的确切格式内容格式(
    explode()
    ,使用分隔符)
  • post meta中包含的数据格式,带有
    extras
    键(int、word、序列化数据)
$extras=$\u GET['extras'];
//如果$extras已经是string:good的PHP数组,那么您可能需要将其分解()以从字符串中获取PHP数组
$query\u参数=[
//可能需要其他wp_query参数来保护对公共/想要的内容的查询
//如果没有$_GET['extras'];,则用于wp查询的数组将为空!
];
如果(!空($extras)){
$query\u params['meta\u query']=[
//我们使用“OR”作为“post with extra 1,post with extra 2”,意思是“post with extra 1 AND extra 2”,但post只能具有给定元键的单个值
//如果“extras”meta_键包含一个序列化的值,那么like会将任何post与包含至少一个extras值的meta匹配
'关系'=>'或',
];
foreach($extras作为$extra){
$query\u params['meta\u query'][]=[
'key'=>'extras',
“值”=>$extra,
'比较'=>'类似'
];
}
}
$loop=新的WP\U查询($Query\U参数);

您是否有输入错误,$\u GET[“{extras..是的,这里只是一个输入错误。我添加此项是为了澄清$extras变量的来源。您能否添加一个示例,说明当您
print\u r()
其他
$args
中的任何一个
$args3
时返回的内容。请执行
var\u dump($\u GET>)['extras'];
并告诉我们它说了什么。