From ecc79a855fb656c41da433cf1a9ab56a6d850a37 Mon Sep 17 00:00:00 2001 From: Robin Cornett Date: Wed, 12 Aug 2015 14:26:26 -0400 Subject: [PATCH] Add featured image column for authors Also refactored for a reusable image function. --- ...lass-displayfeaturedimagegenesis-admin.php | 92 ++++++++++++++----- 1 file changed, 70 insertions(+), 22 deletions(-) diff --git a/includes/class-displayfeaturedimagegenesis-admin.php b/includes/class-displayfeaturedimagegenesis-admin.php index b3f2618..ad07115 100644 --- a/includes/class-displayfeaturedimagegenesis-admin.php +++ b/includes/class-displayfeaturedimagegenesis-admin.php @@ -19,6 +19,7 @@ class Display_Featured_Image_Genesis_Admin { $this->common = new Display_Featured_Image_Genesis_Common(); $this->set_up_taxonomy_columns(); $this->set_up_post_type_columns(); + $this->set_up_author_columns(); add_action( 'admin_enqueue_scripts', array( $this, 'featured_image_column_width' ) ); } @@ -63,6 +64,16 @@ class Display_Featured_Image_Genesis_Admin { } } + /** + * Set up featured image column for users + * + * @since 2.3.0 + */ + protected function set_up_author_columns() { + add_filter( 'manage_users_columns', array( $this, 'add_column' ) ); + add_action( 'manage_users_custom_column', array( $this, 'manage_user_column' ), 10, 3 ); + } + /** * add featured image column * @param column $columns set up new column to show featured image for taxonomies/posts/etc. @@ -103,19 +114,14 @@ class Display_Featured_Image_Genesis_Admin { $taxonomy = filter_input( INPUT_POST, 'taxonomy', FILTER_SANITIZE_STRING ); $taxonomy = ! is_null( $taxonomy ) ? $taxonomy : get_current_screen()->taxonomy; - $alt = get_term( $term_id, $taxonomy )->name; - $id = is_numeric( $term_meta['term_image'] ) ? $term_meta['term_image'] : Display_Featured_Image_Genesis_Common::get_image_id( $term_meta['term_image'] ); - $preview = apply_filters( - 'display_featured_image_genesis_admin_term_thumbnail', - wp_get_attachment_image_src( $id, 'thumbnail' ), - $id + $args = array( + 'image_id' => is_numeric( $term_meta['term_image'] ) ? $term_meta['term_image'] : Display_Featured_Image_Genesis_Common::get_image_id( $term_meta['term_image'] ), + 'context' => 'term', + 'alt' => get_term( $term_id, $taxonomy )->name, ); - printf( '%2$s', - esc_url( $preview[0] ), - esc_attr( $alt ) - ); + echo wp_kses_post( $this->admin_featured_image( $args ) ); } @@ -132,22 +138,19 @@ class Display_Featured_Image_Genesis_Admin { if ( 'featured_image' !== $column ) { return; } - - $id = get_post_thumbnail_id( $post_id ); - if ( ! $id ) { + $image_id = get_post_thumbnail_id( $post_id ); + if ( ! $image_id ) { return; } - $preview = apply_filters( - 'display_featured_image_genesis_admin_post_thumbnail', - wp_get_attachment_image_src( $id, 'thumbnail' ), - $id - ); - printf( '%2$s', - esc_url( $preview[0] ), - esc_attr( the_title_attribute( 'echo=0' ) ) + $args = array( + 'image_id' => $image_id, + 'context' => 'post', + 'alt' => the_title_attribute( 'echo=0' ), ); + echo wp_kses_post( $this->admin_featured_image( $args ) ); + } /** @@ -156,7 +159,7 @@ class Display_Featured_Image_Genesis_Admin { */ public function featured_image_column_width() { $screen = get_current_screen(); - if ( in_array( $screen->base, array( 'edit', 'edit-tags' ) ) ) { ?> + if ( in_array( $screen->base, array( 'edit', 'edit-tags', 'users' ) ) ) { ?>