diff --git a/wp-admin/includes/class-wp-list-table.php b/wp-admin/includes/class-wp-list-table.php index 7a9d2ad01f..2f46591be5 100644 --- a/wp-admin/includes/class-wp-list-table.php +++ b/wp-admin/includes/class-wp-list-table.php @@ -64,6 +64,15 @@ class WP_List_Table { */ private $_pagination; + /** + * The view switcher modes + * + * @since 4.1.0 + * @var array + * @access protected + */ + protected $modes = array(); + /** * Constructor. * @@ -114,6 +123,13 @@ class WP_List_Table { // wp_enqueue_script( 'list-table' ); add_action( 'admin_footer', array( $this, '_js_vars' ) ); } + + if ( empty( $this->modes ) ) { + $this->modes = array( + 'list' => __( 'List View' ), + 'excerpt' => __( 'Excerpt View' ) + ); + } } /** @@ -520,16 +536,11 @@ class WP_List_Table { * @access protected */ protected function view_switcher( $current_mode ) { - $modes = array( - 'list' => __( 'List View' ), - 'excerpt' => __( 'Excerpt View' ) - ); - ?>
$title ) { + foreach ( $this->modes as $mode => $title ) { $classes = array( 'view-' . $mode ); if ( $current_mode == $mode ) $classes[] = 'current'; diff --git a/wp-admin/includes/class-wp-media-list-table.php b/wp-admin/includes/class-wp-media-list-table.php index 688b7b8ae5..3629f25038 100644 --- a/wp-admin/includes/class-wp-media-list-table.php +++ b/wp-admin/includes/class-wp-media-list-table.php @@ -22,6 +22,11 @@ class WP_Media_List_Table extends WP_List_Table { public function __construct( $args = array() ) { $this->detached = ( isset( $_REQUEST['attachment-filter'] ) && 'detached' === $_REQUEST['attachment-filter'] ); + $this->modes = array( + 'list' => __( 'List View' ), + 'grid' => __( 'Grid View' ) + ); + parent::__construct( array( 'plural' => 'media', 'screen' => isset( $args['screen'] ) ? $args['screen'] : null, @@ -147,38 +152,6 @@ class WP_Media_List_Table extends WP_List_Table { parent::pagination( $which ); } - /** - * Display a view switcher - * - * @since 3.1.0 - * @access protected - */ - protected function view_switcher( $current_mode ) { - $modes = array( - 'list' => __( 'List View' ), - 'grid' => __( 'Grid View' ) - ); - -?> - -
- $title ) { - $classes = array( 'view-' . $mode ); - if ( $current_mode == $mode ) - $classes[] = 'current'; - printf( - "%s\n", - esc_url( add_query_arg( 'mode', $mode ) ), - implode( ' ', $classes ), - $title - ); - } - ?> -
-