2014-03-24 164 views
0

我的網站有woocommerce插件,所以post_type是產品。每個產品都有另一個插件(比較產品專業版)使用的幾個自定義字段。自定義字段上的Wordpress查詢

現在我們想通過URL查詢的產品,讓如:www.domain.com/?post_type=product & custom_field =值

這可能嗎?如何?

任何幫助將高度appriciated!

+0

你究竟想達到什麼目的?建立一個基於'$ _GET'變量的查詢?或基於自定義字段查詢帖子? –

+0

所以一個自定義字段是品牌。我知道這是一種分類法,但我們必須將品牌與自定義字段進行比較。現在我們要通過url進行查詢,所以如果我們想要一個包含'honda'產品的列表,我希望能夠像這樣查詢它:www.domain.com/?post_type=products&_woo_compare_field-15=Honda –

回答

0

您可以添加這樣的事情到您的查詢參數:

'post_type' => $_GET['post_type'], 
'meta_query' => array(
    array(
     'key' => '_woo_compare_field-', 
     'value' => $_GET['_woo_compare_field-'], 
     'compare' => '=', 
    ) 

), 

但它非常靜態的,不會爲不同的元鍵值對工作。

你可以將它們分配到一個數組,並追加數組這樣

$meta_queries = array(
     'relation' => 'AND', 
    ); 

    foreach($_GET as $key => $value) { 
     $result = array(
      'key' => $key, 
      'value' => $value, 
      'compare' => '=', 
     ); 
     $meta_queries[] = $result; 
    } 

而且$meta_queries陣列追加到WordPress的查詢參數。

但這意味着所有您的get變量被用作meta key值對。你可以爲此寫一些邏輯,但它永遠不會很漂亮