我的问题是:
$args = array( \'post_type\' => \'pc-portables-gamer\', \'posts_per_page\' => -1, \'meta_query\' => array(
array( \'key\' => \'modele_du_processeur\', \'value\' => $_GET[\'modele_du_processeur\'] , \'compare\' => \'LIKE\' ), \'relation\' => \'AND\'
));
$query = new WP_Query($args);
这是我的搜索表:
<form action="<?php $GET_[\'SERVER_URI\'] ?>" method="get">
<input type="checkbox" name="modele_du_processeur" value="Core i3" />
<input type="checkbox" name="modele_du_processeur" value="Core i5" />
<input type="checkbox" name="modele_du_processeur" value="Core i7" />
<input type="submit" name="submit" value="view" />
</form>
有人能告诉我如何获得“Core i5”和“Core i7”的帖子吗?
选中两个框(即:modele\\u du\\u processeur=Core+i5&modele\\u du\\u processeur=Core+i7)只会得到最后一个值!
我试图将输入命名为“modele\\u du\\u processeur[]”,但查询无效,并获取所有帖子(字符串为modele\\u du\\u processeur%5B%5D=核心+i5&modele\\u du\\u processeur%5B%5D=核心+i7)
非常感谢!
SO网友:janh
您需要更改搜索表单,PHP使用fieldname[]符号来接受参数名称的多个值。
<input type="checkbox" name="modele_du_processeur[]" value="Core i3" />
<input type="checkbox" name="modele_du_processeur[]" value="Core i5" />
<input type="checkbox" name="modele_du_processeur[]" value="Core i7" />
完成后,您将在
$_GET["modele_du_processeur"]
, 所以你可以
$args = array(
\'post_type\' => \'pc-portables-gamer\',
\'posts_per_page\' => -1,
\'meta_query\' => array(
\'relation\' => \'AND\',
array( \'key\' => \'modele_du_processeur\', \'value\' => $_GET[\'modele_du_processeur\'] , \'compare\' => \'IN\' )
)
);
$query = new WP_Query($args);