获取帖子快捷代码插件和meta_query?
-
16-10-2019 - |
题
我在用着 获取帖子 插件以列出帖子类型“项目”。我想通过两个自定义字段过滤列表:年度(Ex。2006)和状态(ex。Pountation)。我添加了 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"]
尽管我可以自己使用“状态”和“年”,但这是行不通的 meta_key
和 meta_value
.
有人可以把我朝着正确的方向吗?
解决方案
除了未更新的插件外,这将不起作用,因为将meta_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"
}
我建议你做一个 自定义页面模板, ,您将在其中直接使用所需的meta_query调用get_posts()。
您将必须复制处理帖子实际列表的代码。
其他提示
我认为该插件没有更新以支持新查询ARGS,或者在这种情况下特别是 meta_query
arg。
插件页面列出了兼容性 3.0.5, ,如果我没记错的话, meta_query
被引入 3.1, ,所以自然而然地,我得出的结论尚无可用。
我可能错了,只是连接点..
插件使用 shortcode_atts
限制公认参数的列表:
http://plugins.trac.wordpress.org/browser/nurelm-get-posts/tags/0.3/get-posts.php#l29
meta_query
不在该列表中。我建议拨打插件或要求作者更新它以允许元查询。