2012-01-13 54 views
1

我有一個自定義字段名稱「front_sl_slider」。我想顯示所有具有自定義字段「front_sl_slider」值設置爲1的帖子。另外,我想顯示縮略圖,標題和其他自定義字段數據作爲查詢結果得到的帖子。select query to get results of meta_key

$meta_pages = $wpdb->get_results("SELECT * FROM $wpdb->posts WHERE post_type = 'page' AND meta_key = 'front_sl_slider' AND meta_value = 1 ORDER BY menu_order", 'OBJECT'); 
    if ($meta_pages) 
     { 
     foreach ($meta_pages as $pageChild1) : setup_postdata($pageChild1); 
     echo get_post_meta($pageChild1->ID, 'front_sl_slider', true); 
     echo get_post_meta($pageChild1->ID, 'project_client_name', true) ."<br>"; 
     echo get_post_meta($pageChild1->ID, 'project_architect', true) ."<br>"; 
     endforeach; 
     } 
+0

您的選擇查詢對此是錯誤的。請查閱數據庫結構的代碼,並首先使用phpmyadmin或adminer等工具構建查詢,以便確實知道它是否可以工作。在問這個問題之前,我希望你做一些工作。其他一切只是猜測,而不是編程。這個網站是關於編程。所以請給你的問題一些愛。 – hakre 2012-01-13 08:14:58

+0

你可以請你的餐桌結構嗎?有一個名爲'front_sl_slider'的列嗎? – 2012-01-13 08:17:56

+0

@ mathematical.coffee:表結構是wordpress的結構。你可以在Codex中找到它,查看我以前的評論。 – hakre 2012-01-13 08:40:59

回答

3
$querystr = " SELECT $wpdb->posts.* , $wpdb->postmeta.* 
         FROM $wpdb->posts, $wpdb->postmeta 
         WHERE $wpdb->posts.ID = $wpdb->postmeta.post_id 
         AND $wpdb->postmeta.meta_key = 'Featured_Projects_Page' 
         AND $wpdb->postmeta.meta_value = 1 
         AND $wpdb->posts.post_type = 'page' 
         ORDER BY $wpdb->posts.post_date DESC 
        "; 
$pageposts = $wpdb->get_results($querystr, OBJECT); 

試試這個,這應該工作。