Colonna immagine in evidenza nella lista articoli del pannello amministrativo

22 ago 2013, 15:10:48
Visualizzazioni: 20.8K
Voti: 10

Ho un sito per un cliente che accetta immagini dagli utenti come post. Per la moderazione, stiamo aprendo ogni bozza di articolo, il che ovviamente richiede molto tempo se c'è un numero considerevole di immagini da moderare.

Quindi, c'è un modo per mostrare le immagini in evidenza dei post come colonna nella pagina di elenco degli articoli nel pannello amministrativo?

0
Tutte le risposte alla domanda 4
10
14

Utilizza questo hook per aggiungere una colonna personalizzata alla vista elenco post/pagine nell'area di amministrazione.

add_filter('manage_posts_columns', 'add_img_column');
add_filter('manage_posts_custom_column', 'manage_img_column', 10, 2);

function add_img_column($columns) {
    $columns['img'] = 'Immagine in evidenza';
    return $columns;
}

function manage_img_column($column_name, $post_id) {
    if( $column_name == 'img' ) {
        echo get_the_post_thumbnail($post_id, 'thumbnail');
    }
    return $column_name;
}

Inserisci questo codice nel tuo file functions.php

22 ago 2013 15:58:25
Commenti

niente da mostrare

busyjax busyjax
22 ago 2013 19:20:10

Sei sicuro che il tuo post abbia un'immagine in evidenza? Puoi mostrarmi uno screenshot? Questo codice funziona bene per me.

Mangesh Parte Mangesh Parte
22 ago 2013 21:22:05

http://i.imgur.com/UM67XYl.jpg eccolo qui

busyjax busyjax
22 ago 2013 21:41:21

Ti ho chiesto di mostrare lo screenshot dell'immagine in evidenza nel singolo post. Dove l'hai caricata. cioè http://mervin.info/wp-content/uploads/2012/03/screenshot-1-300x209.png

Mangesh Parte Mangesh Parte
22 ago 2013 23:49:10

in realtà, c'era un plugin che causava problemi

busyjax busyjax
25 ago 2013 13:28:36

Ho dovuto cambiare la seconda funzione con la seguente: echo get_the_post_thumbnail($post_id, 'thumbnail'); return true;

PNMG PNMG
9 giu 2014 22:39:12

È necessario che la seconda funzione faccia echo, non return, dell'immagine.

Jake Jake
11 ago 2017 18:22:51

@busyjax puoi per favore spiegare meglio? Qual era il problema e come l'hai risolto?

Peter Kionga-Kamau Peter Kionga-Kamau
13 mar 2019 00:00:15

Volevo mostrare una colonna di piccole miniature di immagini che erano le immagini in evidenza dei post, così senza doverli aprire per modificarli, era facile moderare i post direttamente dalla pagina di amministrazione.

busyjax busyjax
15 mar 2019 11:29:36

Funziona perfettamente, meglio della risposta di jnthnclrk che comunque funziona, ma questa rimuove il resto delle colonne, questa invece le mantiene. Grazie mille...

Rodrigo Zuluaga Rodrigo Zuluaga
5 apr 2019 23:49:26
Mostra i restanti 5 commenti
0
13

Questo è quello che sto usando, assemblato da frammenti trovati online... Utilizza un filtro su manage_posts_colummns per riorganizzare le intestazioni e un'azione su manage_posts_custom_column per aggiungere i dati a livello di riga.

function custom_columns( $columns ) {
    $columns = array(
        'cb' => '<input type="checkbox" />',
        'featured_image' => 'Immagine',
        'title' => 'Titolo',
        'comments' => '<span class="vers"><div title="Commenti" class="comment-grey-bubble"></div></span>',
        'date' => 'Data'
     );
    return $columns;
}
add_filter('manage_posts_columns' , 'custom_columns');

function custom_columns_data( $column, $post_id ) {
    switch ( $column ) {
    case 'featured_image':
        the_post_thumbnail( 'thumbnail' );
        break;
    }
}
add_action( 'manage_posts_custom_column' , 'custom_columns_data', 10, 2 ); 

Puoi anche usarlo su tipi di post personalizzati filtrando su manage_CPTNAME_posts_columns.

22 ago 2013 15:41:28
2

Basato sul codice di @Mangesh Parte, puoi avere l'immagine in evidenza nella prima colonna, prima del titolo.

add_filter('manage_posts_columns', 'add_img_column');
add_filter('manage_posts_custom_column', 'manage_img_column', 10, 2);

function add_img_column($columns) {
  $columns = array_slice($columns, 0, 1, true) + array("img" => "Immagine in evidenza") + array_slice($columns, 1, count($columns) - 1, true);
  return $columns;
}

function manage_img_column($column_name, $post_id) {
 if( $column_name == 'img' ) {
  echo get_the_post_thumbnail($post_id, 'thumbnail');
 }
 return $column_name;
}
7 ago 2018 16:30:50
Commenti

Grazie mille, questa è davvero una buona implementazione.

Rodrigo Zuluaga Rodrigo Zuluaga
5 apr 2019 23:52:15

Ciao Otinane, c'è qualche possibilità che questo venga applicato solo agli "Articoli" e non agli altri tipi di post personalizzati?

Rodrigo Zuluaga Rodrigo Zuluaga
17 apr 2019 03:04:22
0

Questo codice mostra come aggiungere la colonna dell'immagine in evidenza a un custom post type (CPT) 'books'. Sostituisci nella prima riga la parola 'books' con lo slug del tuo custom post type.

add_filter('manage_books_posts_columns', 'add_img_column');
add_filter('manage_posts_custom_column', 'manage_img_column', 10, 2);
function add_img_column($columns) {
    $columns = array_slice($columns, 0, 1, true) + array("img" => "Immagine in evidenza") + array_slice($columns, 1, count($columns) - 1, true);
    return $columns;
}

function manage_img_column($column_name, $post_id) {
    if( $column_name == 'img' ) {
        echo get_the_post_thumbnail($post_id, 'thumbnail');
    }
    return $column_name;
}

Puoi trovare maggiori informazioni qui https://codex.wordpress.org/Plugin_API/Action_Reference/manage_$post_type_posts_custom_column

12 ago 2020 14:08:15