2016-08-10 18 views
-1

私は投稿のタイトルと2つのメタフィールドの値を選択しようとしています。しかし、正しいquery.Yクエリを取得できません。wpdb投稿に参加し、メタを投稿する質問

$querystr = " 
       SELECT $wpdb->posts.post_title 
       FROM $wpdb->posts, $wpdb->postmeta 
       WHERE $wpdb->posts.ID = $wpdb->postmeta.post_id 
       AND $wpdb->postmeta.meta_key = side_post_meta_id 
       AND $wpdb->postmeta.meta_value LIKE %".$search_term."% 
       AND $wpdb->postmeta.meta_key = side_post_id 
       AND $wpdb->postmeta.meta_value LIKE %".$cat_find."%     
       AND $wpdb->posts.post_status = 'publish' 
       AND $wpdb->posts.post_type = 'post' 
       ORDER BY $wpdb->posts.post_date DESC LIMIT 0,10 
      "; 
      print_r($querystr); 
      $pageposts = $wpdb->get_results($querystr, OBJECT); 
+1

ようこそ。このサイトで質問する方法については、次の記事を読んでください:http://stackoverflow.com/help/how-to-ask。少なくとも、テーブル構造、希望する結果、および実際の結果を提供してください。 –

答えて

0

このような何かを試してみてください...スタックオーバーフローに

<?php 
    global $wpdb; 
    $get_results= $wpdb->get_results("SELECT p.post_title, pm2.meta_value , pm3.meta_value 
        FROM wp_posts as p 
    INNER JOIN wp_postmeta AS pm1 ON pm1 .post_id = p.ID 

    INNER JOIN wp_postmeta AS pm2 ON pm2 .post_id = p.ID AND pm2.meta_key='side_post_meta_id' AND pm2.meta_value like '%$search_term%' 

    INNER JOIN wp_postmeta AS pm3 ON pm3 .post_id = p.ID AND pm3 .meta_key='side_post_id' AND pm3 .meta_value like '%$cat_find%' 

    WHERE p.post_status = 'publish' AND p.post_type = 'post' ORDER BY p.post_date DESC LIMIT 0,10"); 

    echo '<pre>'; 
    print_r($get_results); 
    echo '</pre>'; 
+0

OPの問題は何ですか?そして、あなたのコードはそれをどのように解決しますか? – showdev

+0

あなたは問題を知っているので私に解決策を教えてください – Shafi

+0

私はあなたの返事を理解していません。 – showdev