Index: src/wp-admin/includes/class-wp-media-list-table.php =================================================================== --- src/wp-admin/includes/class-wp-media-list-table.php (revision 34255) +++ src/wp-admin/includes/class-wp-media-list-table.php (working copy) @@ -84,36 +84,46 @@ * @return array */ protected function get_views() { - global $wpdb, $post_mime_types, $avail_post_mime_types; + global $post_mime_types, $avail_post_mime_types; $type_links = array(); - $_num_posts = (array) wp_count_attachments(); - $_total_posts = array_sum($_num_posts) - $_num_posts['trash']; - $total_orphans = $wpdb->get_var( "SELECT COUNT( * ) FROM $wpdb->posts WHERE post_type = 'attachment' AND post_status != 'trash' AND post_parent < 1" ); - $matches = wp_match_mime_types(array_keys($post_mime_types), array_keys($_num_posts)); - $num_posts = array(); - foreach ( $matches as $type => $reals ) { - foreach ( $reals as $real ) { - $num_posts[$type] = ( isset( $num_posts[$type] ) ) ? $num_posts[$type] + $_num_posts[$real] : $_num_posts[$real]; - } - } - $selected = empty( $_GET['attachment-filter'] ) ? ' selected="selected"' : ''; - $type_links['all'] = "'; + + $filter = empty( $_GET['attachment-filter'] ) ? '' : $_GET['attachment-filter']; + + $type_links['all'] = sprintf( + '', + selected( $filter, true, false ), + __( 'All media items' ) + ); + foreach ( $post_mime_types as $mime_type => $label ) { - if ( !wp_match_mime_types($mime_type, $avail_post_mime_types) ) + if ( ! wp_match_mime_types( $mime_type, $avail_post_mime_types ) ) { continue; + } - $selected = ''; - if ( !empty( $_GET['attachment-filter'] ) && strpos( $_GET['attachment-filter'], 'post_mime_type:' ) === 0 && wp_match_mime_types( $mime_type, str_replace( 'post_mime_type:', '', $_GET['attachment-filter'] ) ) ) - $selected = ' selected="selected"'; - if ( !empty( $num_posts[$mime_type] ) ) - $type_links[$mime_type] = ''; + $selected = selected( + $filter && 0 === strpos( $filter, 'post_mime_type:' ) && + wp_match_mime_types( $mime_type, str_replace( 'post_mime_type:', '', $filter ) ), + true, + false + ); + + $type_links[$mime_type] = sprintf( + '', + esc_attr( $mime_type ), + $selected, + $label[0] + ); } - $type_links['detached'] = ''; + $type_links['detached'] = ''; - if ( !empty($_num_posts['trash']) ) - $type_links['trash'] = ''; - + if ( $this->is_trash ) { + $type_links['trash'] = sprintf( + '', + selected( 'trash' === $filter, true, false ), + __( 'Trash' ) + ); + } return $type_links; } @@ -372,7 +382,7 @@
- ID ); echo wp_basename( $file ); ?>