Wordpress query_posts类别下拉过滤器

时间:2013-06-13 10:51:33

标签: php arrays wordpress

我正在开发一个wordpress的下拉菜单,它可以过滤不同类别的帖子。 我目前正在使用这样的query_posts函数:

query_posts( array('category__and'=>array($_GET['operation'],$_GET['type'])));

get $_GET['operation']$_GET['type']显然是通过表单下拉菜单中的params传递的。

当我在表格中传递2个值时,查询会正确运行,它会显示所选的正确类别中的帖子,一切都很好。

当我在表单中没有定义任何一个get值时会出现问题,因此来自url的get就像是空的。

Example:
operation=4
type=2

它运行正常。

Trouble:
operation=""
type=2

查询或我看不到的任何内容中断并显示没有结果。

我希望有没有办法检查是否有任何值为空并将其从数组中排除? 像:

query_posts( array('category__and'=>array(
if($_GET['operation']!=""){
$_GET['operation'],
}
$_GET['type']

))
);

请帮忙!

1 个答案:

答案 0 :(得分:0)

这样的事情应该做你需要的。

$args = array();

if (!empty($_GET['operation']))
  $args[] = $_GET['operation'];

if (!empty($_GET['type']))
  $args[] = $_GET['type'];

if (!empty($args))
  query_posts( array('category__and'=>$args));
else
  query_posts();