0

もう泣きそうです!

私は多くの Google 検索を行ってきましたが、このコーディングの一部を思い通りに動作させることができません。

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>';
   }
}

現在、投稿の親子を表示しています。

いくつかの助けや方向性に非常に感謝しています!

ありがとう、ジェイス

4

1 に答える 1

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 );
于 2013-05-03T15:14:06.703 に答える