Adăugarea categoriei în coloana de administrare pentru un tip de postare personalizat

29 sept. 2013, 19:35:38
Vizualizări: 28.2K
Voturi: 15

Am creat un tip de postare personalizat numit article și informațiile afișate în ecranul de rezumat din admin sunt minime. Am reușit să adaug imaginea reprezentativă folosind http://codex.wordpress.org/Plugin_API/Action_Reference/manage_posts_custom_column dintr-un tutorial.

Cu toate acestea, aș dori să pot avea o privire de ansamblu asupra categoriilor și subcategoriilor care au fost atribuite acestor postări în pagina de administrare, adică să adaug o coloană pentru acea parte?

Acesta este codul pe care l-am folosit pentru a înregistra taxonomia în codul tipurilor de postare personalizate

1
Comentarii

Poți folosi un plugin precum Codepress Admin Columns

fregante fregante
26 mar. 2014 15:31:58
Toate răspunsurile la întrebare 3
2
24

Funcția register_taxonomy are un parametru numit show_admin_column care se ocupă de adăugarea unei coloane. Ai încercat să-l folosești?

exemplu:

register_taxonomy(
    'my_tax', 
    'post_type', 
    array(
        'label'             => 'Taxonomia Mea',
        'show_admin_column' => true,
        )
);
8 ian. 2015 07:21:29
Comentarii

Te rog, adaugă cod și explică cum folosirea lui răspunde la întrebare. Dacă vrei doar să întrebi ceva de la OP, folosește comentariile.

cybmeta cybmeta
21 dec. 2016 17:00:32

Este 2020 și răspunsul încă funcționează. Mulțumesc pentru ajutor. Upvote din partea mea.

user9437856 user9437856
23 sept. 2020 22:38:16
0

După o căutare, am găsit o soluție folosind filtrul manage_edit-${post_type}_columns și acțiunea manage_${post_type}_posts_custom_column.

Coloanele sunt create cu filtrul și apoi coloana este populată cu acțiunea. Presupun că coloane suplimentare ar putea fi adăugate și populate destul de ușor folosind ideile din acest link 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'] = 'Categorie';
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 ) {

    /* Dacă se afișează coloana 'article_category'. */
    case 'article_category' :

        /* Obține categoriile pentru postare. */
        $terms = get_the_terms( $post_id, 'article_category' );

        /* Dacă s-au găsit categorii. */
        if ( !empty( $terms ) ) {

            $out = array();

            /* Parcurge fiecare categorie, creând un link către pagina de editare pentru categoria specifică. */
            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' ) )
                );
            }

            /* Combină categoriile, separându-le cu virgulă. */
            echo join( ', ', $out );
        }

        /* Dacă nu s-au găsit categorii, afișează un mesaj implicit. */
        else {
            _e( 'Nu există articole' );
        }

        break;

    /* Ieși din instrucțiunea switch pentru orice altceva. */
    default :
        break;
}
}
1 oct. 2013 02:17:51
1

Aproape aceeași întrebare: vreau o coloană suplimentară "categorie" în ecranul de administrare. "categorie" este o taxonomie creată cu Divi Machine. Slug-ul este art_category În functions.php al temei mele child, am reușit să fac câmpurile ACF vizibile, chiar sortabile, dar acelea sunt câmpuri ACF. Coloana Categorie este vizibilă. Totuși, nu există valori.

Trebuie să fie pe undeva aici:

    if ( 'artcategory' === $column ) {
    $artcategory = get_post_meta( $post_id, 'art_category', true );

    if ( ! $artcategory ) {
      _e( 'n/b' ); // n/b = nu există/not available
    } else {
      echo $artcategory;
    }
  }


Ce fac greșit.....
16 iun. 2022 12:20:27
Comentarii

Acest răspuns nu răspunde cu adevărat la întrebare. Dacă ai o altă întrebare, o poți adresa făcând clic pe Pune o Întrebare. Pentru a fi notificat atunci când această întrebare primește răspunsuri noi, poți urmări această întrebare. Odată ce ai suficientă reputație, poți de asemenea adăuga o recompensă pentru a atrage mai multă atenție asupra acestei întrebări. - Din Recenzie

vancoder vancoder
17 iun. 2022 01:31:47