こんにちは@stevenスピルバーグ:
あなたのエラーは、あなたの代わりに一度、wp_term_taxonomy
一度wp_term_relationships
を指定する二回wp_term_relationships
を指定したということでした。ここでの作業クエリは次のとおりです。
SELECT * FROM wp_posts
INNER JOIN wp_term_relationships
ON wp_posts.ID = wp_term_relationships.object_id
INNER JOIN wp_term_taxonomy
ON wp_term_taxonomy.term_taxonomy_id =
wp_term_relationships.term_taxonomy_id
WHERE term_id = 1 AND taxonomy = 'category';
しかし、あなたは、ワードプレスで使用する.php
ファイル内で、私はあなたがそのようなWP_Query
を使用して、これを出発物質として、別のアプローチを使用して推薦することを使用することを計画している場合:
$term = get_term_by('id',1);
$query = new WP_Query(array(
'taxonomy'=>'category',
'term'=>$term->slug,
));
print_r($query->posts);
あなたはquery_posts()
コーデックスページのWP_Query
のための他の引数を見つけることができます(引数が同じである。)あなたはおそらくあなたのクエリを微調整するために使用したいと思う他のいくつかの引数があります。もちろん
あなたはこのように、接頭辞を心配する必要はありませんので、その後、少なくとも$wpdb
オブジェクトを使用して、いくつかの理由で直接SQLを使用する必要がある場合:
global $wpdb;
$sql = <<<SQL
SELECT * FROM {$wpdb->posts}
INNER JOIN {$wpdb->term_relationships}
ON {$wpdb->posts}.ID = {$wpdb->term_relationships}.object_id
INNER JOIN {$wpdb->term_taxonomy}
ON {$wpdb->term_taxonomy}.term_taxonomy_id =
{$wpdb->term_relationships}.term_taxonomy_id
WHERE 1=1
AND {$wpdb->term_taxonomy}.term_id = 1
AND {$wpdb->term_taxonomy}.taxonomy = 'category'
SQL;
$posts = $wpdb->get_results($sql);
・ホープ、このことができます。
-マイケブ
どうしますか? –