複数タグ全部を含む投稿idをsql文で抽出
-
複数のタグを全部含む投稿は通常は
query_posts( array( 'tag__and' => array( 37, 47 ) ) ); query_posts('tag=tag1+tag2');
のように、WordPressの関数と引数で抽出可能です。
他の条件との組み合わせの絞り込みの関係でどうしてもsql文で抽出する必要が生じています。
$sql = " SELECT P.ID FROM wp_posts AS P LEFT JOIN wp_term_relationships AS TR ON P.ID=TR.object_id LEFT JOIN wp_terms AS TERMS ON TR.term_taxonomy_id=TERMS.term_id WHERE P.post_status='publish' AND P.post_type = $post_type AND TERMS.name IN ('tag1','tag2') "; $postIds = $wpdb->get_results($sql, ARRAY_A);
上記で tag1 or tag2 のどちらかを含む投稿を抽出できます。
しかし、tag1 と tag2 のどちとも含む投稿を抽出する必要があります。
どのようにsql文にしたらよろしいでしょうか。WordPressというよりsqlの質問になってしまっていますが、
どなたか方法を教えていただけないでしょうか。よろしくお願いいたします。
3件の返信を表示中 - 1 - 3件目 (全3件中)
3件の返信を表示中 - 1 - 3件目 (全3件中)
- トピック「複数タグ全部を含む投稿idをsql文で抽出」には新たに返信することはできません。