कस्टम पोस्ट प्रकार के लिए व्यवस्थापक स्तंभ में श्रेणी जोड़ रहा है?


13

मैंने लेख नाम से एक कस्टम पोस्ट प्रकार बनाया है और व्यवस्थापक सारांश स्क्रीन पर दी गई जानकारी विरल है। मैं एक ट्यूटोरियल से http://codex.wordpress.org/Plugin_API/Action_Reference/manage_posts_custom_column का उपयोग करके चित्रित छवि पोस्ट थंबनेल छवि जोड़ने में सक्षम था ।

हालाँकि मैं उन श्रेणियों और उप श्रेणियों का अवलोकन प्राप्त करने में सक्षम होना चाहूँगा जो इन पदों ने उन्हें व्यवस्थापक पृष्ठ पर सौंपी हैं। यानी उस हिस्से के लिए एक कॉलम जोड़ना?

यहाँ वह कोड है जो मैंने कस्टम पोस्ट प्रकार कोड में वर्गीकरण को पंजीकृत करने के लिए उपयोग किया है


जवाबों:


18

Register_taxonomy समारोह नामक पैरामीटर है show_admin_columnकि एक कॉलम शामिल संभाल लेंगे। क्या आपने कोशिश की है?

उदाहरण के लिए:

register_taxonomy(
    'my_tax, 
    'post_type', 
    array(
        'label'             => 'My Taxonomy',
        'show_admin_column' => true,
        )
);

1
कृपया, कोड जोड़ें और बताएं कि कैसे उपयोग करने से यह क्सेटिटोन का उत्तर देता है। यदि आप ओपी से कुछ पूछना चाहते हैं, तो टिप्पणियों का उपयोग करें।
साइबरमेट

6

कुछ खोज के बाद, मैंने manage_edit-${post_type}_columnsफिल्टर और manage_${post_type}_posts_custom_columnएक्शन का उपयोग करके एक समाधान पाया है ।

कॉलम फ़िल्टर के साथ बनाए जाते हैं और फिर कार्रवाई के साथ कॉलम को आबाद किया जाता है। मैं अतिरिक्त कॉलम जोड़ा जा सकता है और आबादी काफी आसानी से इस लिंक में विचारों का उपयोग कर मान http://justintadlock.com/archives/2011/06/27/custom-columns-for-custom-post-types

add_filter('manage_edit-article_columns', 'my_columns');
function my_columns($columns) {
    $columns['article_category'] = 'Category';
return $columns;
}

add_action( 'manage_article_posts_custom_column', 'my_manage_article_columns', 10, 2 );

function my_manage_article_columns( $column, $post_id ) {
global $post;

switch( $column ) {

    /* If displaying the 'article_category' column. */
    case 'article_category' :

        /* Get the genres for the post. */
        $terms = get_the_terms( $post_id, 'article_category' );

        /* If terms were found. */
        if ( !empty( $terms ) ) {

            $out = array();

            /* Loop through each term, linking to the 'edit posts' page for the specific term. */
            foreach ( $terms as $term ) {
                $out[] = sprintf( '<a href="%s">%s</a>',
                    esc_url( add_query_arg( array( 'post_type' => $post->post_type, 'article_category' => $term->slug ), 'edit.php' ) ),
                    esc_html( sanitize_term_field( 'name', $term->name, $term->term_id, 'article_category', 'display' ) )
                );
            }

            /* Join the terms, separating them with a comma. */
            echo join( ', ', $out );
        }

        /* If no terms were found, output a default message. */
        else {
            _e( 'No Articles' );
        }

        break;

    /* Just break out of the switch statement for everything else. */
    default :
        break;
}
}
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.