|

WordPress: Beitragsbilder in Artikelliste im Dashboard anzeigen

picture 846262 1920

Beitragsbilder sind längst nicht mehr nur Zierde, sondern spielen eine immer größere Rolle in bestimmten Schemata (strukturierte Daten, zum Beispiel Rich Snippets für Artikel), zu denen sie mithin sogar zwingend gehören. Umso wichtiger ist es, sich schnell einen Überblick darüber verschaffen zu können ob Beiträge bereits ein Artikelbild haben, oder nicht. Hierbei helfen nachfolgende Funktionen in der functions.php des Themes.

thumb column post list
Artikelbilder in Beitragsliste

Die erste Funktion fügt eine neue Spalte ('show_thumbnail' => esc_html__( 'Thumbnails')) in der Beitragsliste im Dashboard ein. Vorher entfernt sie die Beitragsauswahl mit unset aus dem Spalten-Array, und setzt sie anschließend zusammen mit dem neuen Element wieder ein. Die Auswahl-Checkboxen für Beiträge sollen ja ganz am Anfang bleiben.

function my_plugin_posts_columns( $columns ) { $first = array( 'cb' => $columns['cb'] ); $second = array( 'show_thumbnail' => esc_html__( 'Thumbnail') ); unset( $columns['cb'] ); return $first + $second + $columns; } add_filter( 'manage_posts_columns', 'my_plugin_posts_columns' );
Code-Sprache: PHP (php)

Die zweite Funktion holt verfügbare Beitragsbilder in die dafür angelegte Spalte.

function my_plugin_show_post_thumbnail_column( $columns ){ switch($columns){ case 'show_thumbnail': if( function_exists('the_post_thumbnail') ){ echo the_post_thumbnail( array('90','90')); } break; } } add_action( 'manage_posts_custom_column', 'my_plugin_show_post_thumbnail_column', 12, 3 );
Code-Sprache: PHP (php)

Der Hook manage_posts_custom_column bezieht sich auf alle Inhaltstypen. Soll die Spalte nur einen bestimmten Inhaltstype betreffen, zum Beispiel Beiträge, den Hook entsprechend spezifizieren (Schema: manage_{post_type}_custom_column.

Ggf. muss noch die Spaltenbreite via CSS angepasst werden.

function my_plugin_custom_css() { $css = '.column-show_thumbnail {width:100px;}'; printf( '<style id="my-plugin-css">%1$s</style>', $css ); } add_action( 'admin_head', $plugin_admin, 'my_plugin_custom_css' );
Code-Sprache: PHP (php)

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.