Özel gönderi türlerine özel sütun ekleme


27

Bunu daha önce yaptım ama kancanın adını unuttum ve hiçbir yerde bulamıyorum ...

Yapmaya çalıştığım, yönetici içindeki özel yazı tipinin listesine bazı özel sütunlar eklemek.

Örneğin, yönetici olarak, makalelere tıklayın, orada özel sütun eklemek istiyorum.


Aynı soruyu sordum (ve cevapladım) (onları nasıl sıralanabilir yapabileceğimizi de dahil olmak üzere): wordpress.stackexchange.com/questions/253680/…
beta

Yanıtlar:


57

Kancalar özel sütunlar ve özel yazı tipi için bunların ilişkili verilerdir yaratmak manage_{$post_type}_posts_columnsve manage_{$post_type}_posts_custom_columnsırasıyla nerede {$post_type}özel yayın türünün adıdır.

Bu belgeden örnek yazar sütununu kaldırır ve taksonomi ve meta veri sütunu ekler:

// Add the custom columns to the book post type:
add_filter( 'manage_book_posts_columns', 'set_custom_edit_book_columns' );
function set_custom_edit_book_columns($columns) {
    unset( $columns['author'] );
    $columns['book_author'] = __( 'Author', 'your_text_domain' );
    $columns['publisher'] = __( 'Publisher', 'your_text_domain' );

    return $columns;
}

// Add the data to the custom columns for the book post type:
add_action( 'manage_book_posts_custom_column' , 'custom_book_column', 10, 2 );
function custom_book_column( $column, $post_id ) {
    switch ( $column ) {

        case 'book_author' :
            $terms = get_the_term_list( $post_id , 'book_author' , '' , ',' , '' );
            if ( is_string( $terms ) )
                echo $terms;
            else
                _e( 'Unable to get author(s)', 'your_text_domain' );
            break;

        case 'publisher' :
            echo get_post_meta( $post_id , 'publisher' , true ); 
            break;

    }
}

1
Bu kanca için teşekkür ederim !!! Bu harika! Stackoverflow hakkında net bir dokümantasyon yok !!! : D Şerefe dostum
Rodrigo Zuluaga

sütun numarasını ayarlama seçeneği yok mu? gibi column_index[2]. Çünkü custom_column sütunun sonunda görünür.
Dilip Gupta

@DilipGupta $ sütunlar bir dizidir, geri dönmeden önce yeniden sıralayabilirsiniz
fogx

0

Sütun olarak göstermek istediğiniz varsayılan özel meta verileri olup olmadığından emin değilim, ancak özel alanları görüntülemek için sütun eklemenizi sağlayan bu ücretsiz eklentiyi kullanmayı düşünebilirsiniz. https://wordpress.org/plugins/codepress-admin-columns/

Pro sürümü bile bu sütunlara filtreleme, sıralama ve satır içi düzenleme eklemenizi sağlar.


KULLANMAYIN! Sitenizi bozacak: PHP Ölümcül hata: AC () (daha önce [redacted] \\ wp-content \\ themes \ [redacted] \\ functions.php: 628 olarak bildirildi) [redacted] \\ wp-content içinde yeniden bildirilemiyor \\ plugins \\ codepress-admin-column \\ satır 9'da
api.php

@ PeterKionga-Kamau bu sizin özel temanızla uyumluluk sorunudur. Gönderdiğiniz hata, varsayılan bir WP temasıyla görünmeyecek (yirmi yirmi gibi); Ayrıca Divi Theme ile eklentiyi kullanıyorum ve oldukça faydalı buluyorum
Philipp

Bundan kaçınmak için kullanılabilecek bir tür ad alanı veya daha az genel fonksiyon adının kullanımı yok mu?
Peter Kionga-Kamau
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.