我正在使用Get Posts 用于列出帖子类型为“project”的帖子的插件。我想通过两个自定义字段过滤列表:年份(例如2006年)和状态(例如完成)。我补充道meta_query
到插件的get_post
args并尝试了短代码:
[get_posts post_type="project" meta_query="array(array(\'key\' => \'state\', \'value\' =>
\'Completed\'),array(\'key\' => \'year\',\'value\' => \'2006\'))" suppress_filters="false"]
这是行不通的,虽然我可以让“state”和“year”通过它们自己的使用来工作
meta_key
和
meta_value
.
有人能给我指出正确的方向吗?
最合适的回答,由SO网友:scribu 整理而成
除了插件没有更新之外,这也不起作用,因为meta\\u query arg被计算为字符串:
array(3) {
["post_type"] => string(7) "project"
["meta_query"] => string(96) "array(array(\'key\' => \'state\', \'value\' =>
\'Completed\'),array(\'key\' => \'year\',\'value\' => \'2006\'))"
["suppress_filters"] => string(5) "false"
}
我建议你
custom page template, 您可以使用所需的meta\\u查询直接调用get\\u posts()。
您必须复制处理帖子实际列表的代码。