/** * Adds "Image" column (at the second position) to the "Posts" admin page. * * @see https://wpcodebook.com/add-image-column-posts-list-wordpress/ * @see https://developer.wordpress.org/reference/hooks/manage_posts_columns/ * @see https://www.php.net/manual/en/function.array-slice.php */ add_filter( 'manage_posts_columns', function ( $post_columns, $post_type ) { if ( 'post' !== $post_type ) { return $post_columns; } return array_merge( array_slice( $post_columns, 0, 1, true ), array( 'image' => esc_html__( 'Image' ) ), array_slice( $post_columns, 1, null, true ) ); }, 10, 2 ); /** * Renders the "Image" column. * * @see https://wpcodebook.com/add-image-column-posts-list-wordpress/ * @see https://developer.wordpress.org/reference/hooks/manage_posts_custom_column/ * @see https://developer.wordpress.org/reference/functions/get_the_post_thumbnail/ */ add_action( 'manage_posts_custom_column', function ( $column_name, $post_id ) { if ( 'image' === $column_name ) { echo get_the_post_thumbnail( $post_id, array( 50, 50 ) ); } }, 10, 2 );