2011-01-28 25 views
2

私は特定のWordpressカテゴリから3つの投稿を引っ張って探しています。分で、私は3つの最新の投稿を引っ張って、以下のコードを使ってフラッシュバナーに表示することができます。特定のWordpressカテゴリからポスト投稿

SELECT yah_posts.*, yah_postmeta.* 
FROM yah_posts 
LEFT JOIN yah_postmeta ON yah_posts.ID = yah_postmeta.post_id 
WHERE yah_postmeta.meta_key = 'largeimage' && yah_posts.post_status = 'publish' 
ORDER BY post_date DESC LIMIT 3 

すべてのカテゴリから3つの最新の投稿ではなく、特定のカテゴリから最新の投稿を3つ取りたいと思っています。

私は一緒に以下のコードを入れているが、それは実際にはワードプレスの質問に焦点を当てたスタック交換サイトがあります:(

$query = "SELECT yah_posts.*, yah_postmeta.* 
FROM yah_posts 
LEFT JOIN yah_postmeta ON yah_posts.ID = yah_postmeta.post_id 
AND LEFT JOIN $yah_term_taxonomy ON($yah_term_relationships.term_taxonomy_id = $yah_term_taxonomy.term_taxonomy_id) 
WHERE yah_postmeta.meta_key = 'largeimage' && yah_posts.post_status = 'publish' 
AND $yah_term_taxonomy.term_id = '1' 
AND $yah_term_taxonomy.taxonomy = 'category' 
ORDER BY post_date DESC LIMIT 3"; 
+0

質問を投稿するために直接MySQLクエリを使用しているのはなぜですか?これはWordPressインストールの外部のページ/ファイルで実行していますか? – t31os

+0

私はWordpressからXMLを出力し、バナー回転子を表示する外部PHPファイルへの投稿を引っ張っています – McCrum

答えて

1

動作していないようです。そこに見て、このことからコードを取ります質問:あなたは別のものを追加する必要がありますhttps://wordpress.stackexchange.com/questions/6533/modify-wordpress-sql-query-to-pull-from-within-a-category

は、JOIN:

LEFT JOIN $wpdb->term_taxonomy ON($wpdb->term_relationships.term_taxonomy_id = $wpdb->term_taxonomy.term_taxonomy_id) 

そして夫婦複数のステートメントであなたのWHERE句:

AND $wpdb->term_taxonomy.term_id = {term_id of the category you want} 
AND $wpdb->term_taxonomy.taxonomy = 'category' 
1

あなたは、あなたのクエリでwp_term_relationshipsを使用wp_termsを見て、自分のデータベース内のテーブルをwp_term_relationshipsすることができます。

関連する問題