2013-05-03 31 views
0

我準備好哭!WordPress的分類法

我已經做了很多谷歌搜索,但我無法完全按照我想要的方式得到這段代碼。

在WordPress的,我有以下分類:

Active 
- Open 
- In-Progress 
- Awaiting Parts 
- Pending/On-Hold 
- Awaiting Pick-up 

Closed 

https://dl.dropboxusercontent.com/u/30177707/wo-tax.png

我想是要顯示在特定崗位的孩子,如果沒有孩子,我想展示只是父母。

繼承人一個截圖我已經編輯過,所以它給出了我要求的更好的圖片。 https://dl.dropboxusercontent.com/u/30177707/stackoverflow.png

這是我一直在玩代碼:

$terms = wp_get_post_terms($post->ID, 'pctracker_workorderstatus'); 
$count = count($terms); 
if ($count > 0){ 
    foreach ($terms as $term) { 
     echo $term->name .'<br>'; 
    } 
} 

目前其顯示爲後家長和孩子。

非常感謝您的幫助或指導!

感謝, Jase

+0

您想編輯帖子(自定義帖子類型?)後端的狀態列嗎? – 2013-05-03 14:57:04

+0

我有一個自定義帖子類型,它有一個鏈接到它的分類標準,用於設置工作順序的狀態(不改變帖子的狀態)。 – 2013-05-03 14:58:42

回答

1

你必須編輯欄的內容是這樣的:

這是一個示例代碼,你可以適應您的需求,基本上我看所有條件得到哪些父母和孩子。然後根據結果顯示父母或孩子。在你的情況下,總會有1個父母和/或1個孩子。但代碼應該工作。 (未測試)

function MYCUSTOMPOSTTYPE_custom_columns($column_name, $id) { 
    switch ($column_name) { 
     case 'status': 
       $terms = wp_get_post_terms($id, 'pctracker_workorderstatus'); 
       $count = count($terms); 
       if ($count > 0) { 
        $parents = array(); 
        $childs = array(); 
        foreach ($terms as $term) { 
         if(!empty($term->parent)) { 
          $childs[] = $term; 
         } else { 
          $parents[] = $term; 
         } 
        } 
        //display parent if there no child 
        if(empty($childs)) { 
         foreach($parents as $p) { 
          echo $p->name; 
         } 
        } elseif(!empty($parents) && !empty($childs)) { 
         //don't display parent 
         foreach($childs as $p) { 
          echo $p->name; 
         } 
        }       
       } 
      break; 

     default: 
      break; 
    } // end switch 
} 
add_action('manage_MYCUSTOMPOSTTYPE_posts_custom_column', 'MYCUSTOMPOSTTYPE_custom_columns', 10, 2); 
+0

哇!非常感謝那段代碼。那正是我想要的。 – 2013-05-03 15:38:50