通过值为数组的meta_key查询帖子

时间:2012-07-29 作者:Adam Capriola

假设我正在修改默认的posts查询:

add_filter( \'pre_get_posts\', \'my_filter\' );

function my_filter( $query ) {

$query->set( \'meta_key\', \'my_rating\' );
$query->set( \'orderby\', \'meta_value_num\' );
$query->set( \'order\', \'DESC\' );

return $query;

}
我知道这对meta\\u键有效my_rating 如果其值是数字。但假设它的值是一个数组,其值是数字。例如:

array(
    "foo" => 1,
    "bar" => 2,
)
但是数组将被序列化,我想需要取消序列化才能使用它。有没有办法选择数组中的哪个键进行排序?

1 个回复
SO网友:Milo

数组是一个PHP构造,仅对PHP有意义,就MySQL而言,它只是一个字符串。如果需要查询该数据,则应将其分离为各个键。

结束

相关推荐

列出分类法:如果分类法没有POST,就不要列出分类法--取决于定制的POST-META?

这可能很难解释,我不知道是否有解决办法!?我有一个名为“wr\\u event”的自定义帖子类型和一个名为“event\\u type”的分层自定义分类法。自定义帖子类型有一个元框,用于event_date 并且与此帖子类型关联的所有帖子都按以下方式排序event_date. 我在循环中有一个特殊的条件来查询event_date 已经发生了-在这种情况下,它没有显示,但只列在我的档案中。就像你可以使用wp_list_categories() 我编写了一个自定义函数,它以完全相同的方式列出所有分类术语。现在