छवियाँ / मीडिया के लिए श्रेणी / टैग / वर्गीकरण को जोड़ना


9

मैं छवियों (या सभी मीडिया, हालांकि मैं केवल छवियों से संबंधित हूं) में श्रेणी, टैग, या कस्टम टैक्सोनॉमी समर्थन जोड़ने की कोशिश कर रहा हूं। मुझे मिल गया है कि यह आंशिक रूप से समझ लिया गया है:

add_action('init', 'create_image_taxonomies');

function create_image_taxonomies() {
$labels = array(
    'name' => 'Media Category'
);

$args = array(
    'labels' => $labels,
    'public' => true
);

register_taxonomy('imagetype', 'attachment', $args);
}

यह मीडिया स्क्रीन के लिए मीडिया श्रेणी फ़ील्ड को ठीक से जोड़ता है। मैंने यह भी पुष्टि की है कि इसके साथ पहुँचा जा सकता है get_the_terms($my_attachment_id, 'imagetype')

जहां मैं मुसीबत में चल रहा हूं, यह जानकारी सीधे मीडिया को देखने के अलावा एडमिन / डैशबोर्ड में कहीं भी दिखाने के लिए मिल रही है - मैं चाहता हूं कि यह या तो सब-मेन्यू में हो या कस्टम कॉलम के रूप में, या दोनों के लिए, जैसा कि किया जा सकता है पोस्ट और पेज।

मैंने manage_posts_custom_columnसाथ प्रयोग करने की कोशिश की है manage_edit-attachment_columns, लेकिन कुछ भी दिखाई नहीं दे रहा है। मैंने add_media_pageपेज और पोस्ट श्रेणियों के लिए स्वचालित रूप से उत्पन्न पेज की तरह कुछ प्रदर्शित करने के लिए उपयोग करने की कोशिश की है , लेकिन यहां मुझे उन छवियों को खींचने में परेशानी हो रही है जिनके लिए मैंने श्रेणियां दी हैं। आप यहां दोनों प्रयास देख सकते हैं: http://pastebin.com/S8KYTKRM

किसी भी सहायता के लिए अग्रिम धन्यवाद!

जवाबों:


8

यहां बताया गया है कि हाल ही में मैंने मीडिया लाइब्रेरी को एक छांटे जाने वाले कॉलम के रूप में एक कस्टम टैक्सोनॉमी कैसे जोड़ा:

// Add a new column
add_filter('manage_media_columns', 'add_topic_column');
function add_topic_column($posts_columns) {
    $posts_columns['att_topic'] = _x('Topic', 'column name');
    return $posts_columns;
}

// Register the column as sortable
function topic_column_register_sortable( $columns ) {
    $columns['att_topic'] = 'att_topic';
    return $columns;
}
add_filter( 'manage_upload_sortable_columns', 'topic_column_register_sortable' );

add_action('manage_media_custom_column', 'manage_attachment_topic_column', 10, 2);
function manage_attachment_topic_column($column_name, $id) {
    switch($column_name) {
    case 'att_topic':
        $tagparent = "upload.php?";
        $tags = wp_get_object_terms( $id, 'taxonomy_name', '' );
        if ( !empty( $tags ) ) {
            $out = array();
            foreach ( $tags as $c )
                $out[] = "<a href='".$tagparent."tag=$c->slug'> " . esc_html(sanitize_term_field('name'
                         , $c->name, $c->term_id, 'post_tag', 'display')) . "</a>";
            echo join( ', ', $out );
        } else {
            _e('No Topics');
        }
        break;
    default:
        break;
    }
}

धन्यवाद! फ़िल्टर और कार्रवाई वे टुकड़े थे जो मैं गायब था।
रौक्सैन रेडी

कॉलम के प्रत्येक आइटम को क्लिक करने योग्य बनाने के लिए, मैंने <a>$ $ के लिए एक टैग जोड़ा href="upload.php?imagetype='.$tag->slug.'":।
रॉक्सने रेडी
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.