如何显示来自具有另一个自定义字段的某个值的帖子或来自某些帖子类型的所有自定义字段的值?

时间:2012-07-08 作者:rereradu

我知道这个问题很含糊。让我解释一下:

我有一个页面,其中列出了所有具有特定自定义字段值的帖子。(例如:页面Rentals 列出具有该值的所有帖子rental 自定义字段的offer_type ).

我想添加一个按城市筛选的选项,这样只有特定值为city 显示自定义字段。为此,我使用get 方法生成自定义查询(在我的示例中,有两个自定义字段“offer\\u type”和“city”)。

What I need 是列出所有城市(值city 自定义字段),用于具有rental 的值offer_type. 每个城市必须列出一次。

我尝试了这段代码(请注意,我将所有表单打包):

$metakey = \'city\';
   $cities = $wpdb->get_col($wpdb->prepare("SELECT DISTINCT meta_value 
           FROM $wpdb->postmeta WHERE meta_key = %s ORDER BY meta_value ASC", $metakey) );

   if ($cities) {   
                 foreach ( $cities as $city ) {
                 echo $city;
            }
        }
但这列出了city 所有帖子的自定义字段(例如,如果我有一篇帖子的值为offer_type 不同于rental, 其价值city 自定义字段将显示在我的列表中)。

我知道问题围绕着sql查询和连接表,但我确实缺乏解决这个问题的技能。

请帮忙!

2 个回复
SO网友:Will

查看WP\\U查询类的参考文档:http://codex.wordpress.org/Class_Reference/WP_Query

类似这样:

$args = array(
  //some key/value pairs...whatever
          \'meta_query => array(
                          array(
                         \'key\' => somekey,
                         \'value\' => somevalue,
                         \'compare\' => some comparison operator
                         ),
                         array(
                         \'key\' => some other key,
                         \'value\' => some other value,
                         \'compare\' => some comparison operator
                         )
                     )
               )

$my_query = new WP_Query( $args );

//some code to do something with the results of the query

SO网友:Alexander

这不是对您的问题的直接回答,而是一行代码,您可以将其用作参考。

这是我用来通过我的表进行搜索的内容的副本,我在数据范围之间进行搜索,然后将其限制为仅显示输入的usr\\U id的实例

 $this->items = $wpdb->get_results($wpdb->prepare("SELECT  *  FROM $table_name WHERE `datec` BETWEEN CAST(\'$start_date\' AS DATE) AND CAST(\'$end_date\' AS DATE) AND `usr_id`= $usr_id"), ARRAY_A);
希望这有帮助:)

结束

相关推荐

是否获取自定义帖子类型和分类的Get_the_Category_List或Get_the_Tag_List?

基本上,我已经为一组类型的帖子设置了一个自定义的帖子类型和分类法,我正在从twentyeleven创建一个子主题。当我使用默认的WP帖子,然后对它们进行标记和分类时,请获取\\u category\\u列表并获取\\u tag\\u列表以完成其工作并显示在帖子下方。现在,我想用两种分类法来处理我的自定义帖子类型,它们分别作为标记和类别。有没有一种方法可以做到这一点,而不必重做获取\\u category\\u列表和获取\\u tag\\u列表已经完成的工作?