2011-12-19 61 views
0

我已經使這個查詢來選擇來自WordPress博客按類別,標籤和自定義字段進行過濾的帖子。通過自定義字段,標籤和類別的wordpress查詢過濾

SELECT wp_posts.* 
FROM wp_posts 
WHERE wp_posts.post_type = 'post' AND wp_posts.post_status = 'publish' 

AND  (  SELECT COUNT(*) 
       FROM wp_term_relationships 
       LEFT JOIN wp_term_taxonomy ON (wp_term_taxonomy.term_taxonomy_id = wp_term_relationships.term_taxonomy_id) 
       LEFT JOIN wp_terms ON (wp_term_taxonomy.term_id = wp_terms.term_id) 
       WHERE wp_posts.ID = wp_term_relationships.object_id 
       AND  (wp_terms.name = 'collaborazioni' && wp_term_taxonomy.taxonomy = 'category') 
         || 
         (wp_terms.name = 'jammin' && wp_term_taxonomy.taxonomy = 'post_tag') 
      ) >= 1 

AND  (  SELECT COUNT(*) FROM wp_postmeta 
       WHERE wp_postmeta.post_id = wp_posts.ID 
       AND wp_postmeta.meta_key = 'Product-code' 
       AND wp_postmeta.meta_value = 'xxxxxx' 
       ) >= 1 

但我認爲這有點沉重..你有沒有更好的解決方案?

謝謝,彼得羅。

回答

0

你想縮短什麼?它已經看起來很短了。

PS。您可能想在查詢中使用{$wpdb->prefix}而不是wp_

+0

我不知道應該縮短什麼,我是問我是否有一種方法可以做到這一點。無論如何,我將使用$ wpdb->前綴,謝謝;) – pietrosld 2011-12-20 10:10:59

+0

然後不,你已經做了最大限度的縮短。而$ wpdb->前綴是我在所有可能在Wordpress安裝內運行的腳本中使用的,其中前綴不是默認的wp_。有用的小東西。 – 2011-12-20 15:58:52

相關問題