对在元键中找到的参数使用GET_POST

时间:2011-10-13 作者:Robin Knight

我使用的是get POST,但我需要根据某个meta\\u键具有特定值的POST优化查询。

像这样的

<?php $reviews = get_posts(\'post_type=reviews&numberposts=-1&   // eg. // location=berkshire\');
是否有可能做到这一点,如果有,如何做到?

非凡的

2 个回复
SO网友:chrisguitarguy

get_posts 接受以下任何参数:WP_Query 接受。所以有几个选择。

1. meta_key and meta_value

<?php
get_posts(array(
   // some more args here
   \'meta_key\'   => \'some_key\',
   \'meta_value\' => \'some value\'
));

2. meta_query

meta_query 比使用meta_keymeta_value. 例如,假设您想要获取具有meta\\u键的帖子,该键具有以下三个值之一:

<?php
get_posts(array(
   // more args here        
   \'meta_query\' => array(
      // meta query takes an array of arrays, watch out for this!
      array(
         \'key\'     => \'some_key\',
         \'value\'   => array(\'anOption\', \'anotherOption\', \'thirdOption\'),
         \'compare\' => \'IN\'
      )
   )
));
在中有大量示例供您签出custom fields section 属于WP_Query\'s文档。

SO网友:Jamal Jama

对这是可能的。使用meta_keymeta_value 参数。meta_key 用于自定义字段键(例如位置)和meta_value 用于自定义字段值(例如berkshire)。

使用以下优化代码:

/* Query args. */
$args = array(
    \'post_type\' => \'reviews\',
    \'posts_per_page\' => -1,
    \'meta_key\' => \'location\', 
    \'meta_value\' => \'berkshire\'
);

/* Get Reviews */
$reviews = get_posts( $args );

结束

相关推荐