2016-06-23 5 views
1

私たちは与えられた期間ORポストメタOR POST_TITLEワードプレス:用語、ポストメタまたは一緒にポストのタイトル

我々は複数の用語とポストメタを持っていることで記事を検索するカスタム検索機能を書いていることで検索我々は、またはオペレーションを少数のメタ&の用語の値に適用するソリューションを探しています。

怒鳴るたちは

$search_keyword = $_GET['search_keyword']; 

$args = array(
    'post_type' => 'product', 
    'post_title' => $search_keyword, 
    'tax_query' => array(
     array(
      'taxonomy' => 'property-city', 
      'terms' => $search_keyword, 
      'field' => 'slug', 
      'operator' => 'LIKE' 
     ), 
     array(
      'taxonomy' => 'property-type', 
      'terms' => array('sale', 'rent'), 
      'field' => 'slug', 
      'operator' => 'IN' 
     ) 
    ), 
    'meta_query' => array(
     array(
      'key' => 'min_beds', 
      'value' => '2', 
      'compare' => '>=', 
     ), 
     array(
      'key' => 'min_baths', 
      'value' => '1', 
      'compare' => '>=', 
     ), 
     array(
      'key' => 'address', 
      'value' => $search_keyword, 
      'compare' => 'LIKE', 
     ) 
    ) 
); 

$the_query = new WP_Query($args); 

$search_keywordを必要に応じて、我々はこれまでになく、勿論、動作していないしているクエリは、検索する必要のある文字列値が含まれています。そしてのみポストはそのまま他の条件を保ち、与えられた$search_keywordOR用語ORもポストタイトル

と一致と一致すると一致するメタ・キーを持っているものを選択する必要があります。

注:B /分類property-typeとポストメタmin_beds/min_bathsワット関係は、私はこれが不可能であるかなり確信している

答えて

1

でなければなりません。カスタムSQLを作成するか、2つまたは3つのクエリを実行して結果をマージすることができます。これはおそらく最も簡単です。

+0

私は解決策を探すのに何時間も費やしました。はい、それが唯一の解決策です。そこで、私は3つの選択クエリを一緒に結合し、ポスト(一意の)IDを取得し、 'post_in => $ unique_IDs'で別のクエリを実行すると書いています:) – muaaz

関連する問題