2014-07-15 128 views
0

我有一個json文件,其中包含用於定製分類的數據。 然後我需要過濾..我對postmeta鏈接和其他字段沒有任何問題。但我無法將類別轉換爲json。然後無法過濾。爲自定義帖子定製類別

我知道答案必須非常簡單,但我無法弄清楚2天。

function getItems($meta_query) { 

$params = array(
    'post_type'   => 'property', 
    'nopaging'   => true, 
    'post_status'  => 'publish', 
    'meta_query'  => array(), 

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

if (!empty($_POST['city'])) 
{ 
    $params['meta_query'][] =array(
      'key' => 'property_city', 
      'value' => $_POST['city'], 
      'compare' => 'LIKE' 
     ); 
} 

if(!empty($_POST['parish'])) 
{ 
    $params['meta_query'][] = array(
      'key' => 'property_state', 
      'value' => $_POST['parish'], 
      'compare' => 'LIKE' 
    ); 
} 
//..................ETC.......................... 

我有什麼,現在類別:

//if (!empty($_POST['category'])) 
    /*{ 
    $params['meta_query'][] = array(
       'taxonomy' => 'pcategory', 
       'field' => 'slug', 
       'terms' => $_POST['category']->slug 
       ); 
    }*/ 

    $itemsQuery = new WP_Query(); 
    $properties = $itemsQuery -> query($params);  

    // add property details 
    foreach ($properties as $key => $property) { 
     // options 
     $property->optionsDir = get_post_meta($property->ID, 'property', true); 
     $city = get_post_meta($property->ID, 'property_city', true); 
     $parish = get_post_meta($property->ID, 'property_state', true);  
     $link = get_permalink($property->ID); 
     $category = get_the_terms($property->ID,'pcategory'); 


     $properties[$key]->link = array(
     'link' => $link, 
     ); 

     //postmeta 
     $properties[$key]->postmeta = array(
     'city' => $city, 
     'parish' => $parish, 
     'region' => $region, 
     'link' => $link, 
     'category' => $category, 
     ); 

    } 

    return $properties; 
} 

回答

0
$category = get_the_terms($property->ID,'pcategory'); 

上面的代碼將返回,所有的細節,如,長期ID,姓名,關於這個詞蛞蝓等信息,作爲一個數組對象。

您需要提取所需的詳細信息。

此外,「pcategory」是自定義分類。

因此,在下面的代碼,

$properties[$key]->postmeta = array(
     'city' => $city, 
     'parish' => $parish, 
     'region' => $region, 
     'link' => $link, 
     'category' => $category, 
     ); 

「類」將不能正確地解釋,因爲這是自定義分類,而不是WordPress默認分類。

如果這些參數發送到WP_Query(),那麼你可以說下面「tax_query」,

'tax_query' => array(
     array(
      'taxonomy' => 'pcategory', 
      'field' => 'slug', 
      'terms' => 'demo' 
     ) 

這裏,「演示」是自定義分類例如蛞蝓。

即使單個帖子可以有多個類別與它關聯。因此,您需要提取所需的類別詳細信息。

在'tax_query'中,您還可以指定「term_id」或其他詳細信息。

+0

非常感謝..我喜歡那樣。我不知道什麼是錯,但螢火蟲的控制檯不會停止在json - 類別數組中寫[[無效的分類法]]。 – user3727355

相關問題