Code voorbeeld

Thumbnail van een (custom) post tonen in WordPress admin

Leestijd: 2 minuten (370) words
profile image

Rick de Jong

Strategie

August 15, 2013 08:04

Thumbnail van een (custom) post tonen in WordPress admin

Meer overzicht in je bericht overzicht

Ik krijg regelmatig de vraag of het mogelijk is om de thumbnail van een bericht en/of product (via een custom post type) te tonen in de WordPress admin. Op deze manier wordt het eenvoudiger om een bericht te herkennen als deze moet worden aangepast of verwijderd. 

Uiteraard is dit mogelijk en wel op een vrij eenvoudige manier. Het enige dat we hoeven te doen is de volgende functie in onze functions.php te zetten van het huidige / actieve thema.

De code

add_filter('manage_posts_columns', 'posts_columns', 5);
add_action('manage_posts_custom_column', 'posts_custom_columns', 5, 2);
function posts_columns($defaults){
   $defaults['tsd_admin_thumb'] = __('Thumbs');
   return $defaults;
}
function posts_custom_columns($column_name, $id){
       if($column_name === 'tsd_admin_thumb'){
       echo the_post_thumbnail( 'hier-het-thumbnail-formaat' );
   }
}

Je ziet in de code de volgende regel:

echo the_post_thumbnail( 'hier-het-thumbnail-formaat' );

Dit is de regel waar je het formaat van de thumbnail kunt aangeven in de admin. Stel dat je gebruik maakt van meerdere formaten thumbnails, geef dan hier de naam aan van het formaat dat je wilt gebruiken in de admin omgeving. Heb je dit nog niet gedaan, dan zou je deze regel boven de functie kunnen plaatsen:

add_theme_support( 'post-thumbnails');
if ( function_exists( 'add_image_size' ) ) {
 
add_image_size( 'wpadmin-thumb', 100, 100, true);
}

Hiermee maken we een thumbnail formaat aan van 100 bij 100 pixels. De naam "wpadmin-thumb" gebruiken we vervolgens in de functie zoals zojuist omschreven. Die wordt dan in zijn geheel:

add_filter('manage_posts_columns', 'posts_columns', 5);
add_action('manage_posts_custom_column', 'posts_custom_columns', 5, 2);
function posts_columns($defaults){
   $defaults['tsd_admin_thumb'] = __('Thumbs');
   return $defaults;
}
function posts_custom_columns($column_name, $id){
       if($column_name === 'tsd_admin_thumb'){
       echo the_post_thumbnail( 'wpadmin-thumb' );
   }
}