我有一个带有键的自定义字段colour
值可以是red
或blue
个人岗位。
我知道返回红色或蓝色帖子的代码,即。?colour=red
, 但是我不知道返回红色或蓝色帖子的代码。?colour=red&colour=blue
.
我已经收到用户的代码帮助,但仍然无法工作。。。非常感谢您的帮助。。。谢谢
<form action ="" method="get">
<INPUT TYPE="checkbox" NAME="colour" VALUE="red"> Red<BR>
<INPUT TYPE="checkbox" NAME="colour" VALUE="blue"> Blue<BR>
<button type="submit" name="">Search</button>
</form>
<?php
if($_GET[\'colour\'] && !empty ($_GET[\'colour\'])) {
$colours= $_GET[\'colour\'];
}
$meta_query = array(\'relation\' => \'OR\');
foreach ($colours as $colour) {
$meta_query[] = array(
\'key\' => \'colour\',
\'value\' => $colour,
\'compare\' => \'like\',
);
}
$query = new WP_Query($args);
while($query -> have_posts()) : $query -> the_post();
?>
最合适的回答,由SO网友:Benoti 整理而成
您使用$args
但它并没有定义。
在您的表单中,您需要添加双括号以使$colors成为一个数组。
<INPUT TYPE="checkbox" NAME="colour[]" VALUE="red"> Red<BR>
<INPUT TYPE="checkbox" NAME="colour[]" VALUE="blue"> Blue<BR>
$值){$颜色[]=$值;}
$meta_query = array(\'relation\' => \'OR\');
foreach ($colours as $colour) {
$meta_query[] = array(
\'key\' => \'colour\',
\'value\' => $colour,
\'compare\' => \'like\',
);
}
$args = array(\'meta_query\'=>$meta_query);
$query = new WP_Query($args);