Make WordPress Core

Ticket #32147: 32147.3.patch

File 32147.3.patch, 16.5 KB (added by afercia, 9 years ago)
  • src/wp-admin/css/list-tables.css

     
    535535}
    536536
    537537.tablenav .no-pages,
    538 .tablenav .one-page .pagination-links {
     538.tablenav .one-page .pagination-links,
     539.tablenav .one-page .pagination-heading {
    539540        display: none;
    540541}
    541542
  • src/wp-admin/edit-comments.php

     
    136136        '<p>' . __( '<a href="https://wordpress.org/support/" target="_blank">Support Forums</a>' ) . '</p>'
    137137);
    138138
     139get_current_screen()->add_a11y_info( array(
     140        'heading_views'      => __( 'Filter comments list' ),
     141        'heading_pagination' => __( 'Comments list navigation' ),
     142        'heading_list'       => __( 'Comments list' ),
     143) );
     144
    139145require_once( ABSPATH . 'wp-admin/admin-header.php' );
    140146?>
    141147
  • src/wp-admin/edit-tags.php

     
    4141
    4242add_screen_option( 'per_page', array( 'default' => 20, 'option' => 'edit_' . $tax->name . '_per_page' ) );
    4343
     44get_current_screen()->add_a11y_info( array(
     45        'heading_pagination' => $tax->labels->pagination,
     46        'heading_list'       => $tax->labels->list,
     47) );
     48
    4449$location = false;
    4550
    4651switch ( $wp_list_table->current_action() ) {
  • src/wp-admin/edit.php

     
    232232        '<p>' . __('<a href="https://codex.wordpress.org/Pages_Screen" target="_blank">Documentation on Managing Pages</a>') . '</p>' .
    233233        '<p>' . __('<a href="https://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
    234234        );
     235
    235236}
    236237
     238get_current_screen()->add_a11y_info( array(
     239        'heading_views'      => $post_type_object->labels->views,
     240        'heading_pagination' => $post_type_object->labels->pagination,
     241        'heading_list'       => $post_type_object->labels->list,
     242) );
     243
    237244add_screen_option( 'per_page', array( 'default' => 20, 'option' => 'edit_' . $post_type . '_per_page' ) );
    238245
    239246$bulk_counts = array(
  • src/wp-admin/includes/class-wp-list-table.php

     
    378378                if ( empty( $views ) )
    379379                        return;
    380380
    381                 echo "<ul class='subsubsub'>\n";
     381                if ( isset( $this->screen->a11y_info['heading_views'] ) ) {
     382                        $heading = '<h2 class="screen-reader-text views-heading">' . $this->screen->a11y_info['heading_views'] . '</h2>';
     383                } else {
     384                        $heading = '';
     385                }
     386
     387                echo "$heading\n<ul class='subsubsub'>\n";
    382388                foreach ( $views as $class => $view ) {
    383389                        $views[ $class ] = "\t<li class='$class'>$view";
    384390                }
     
    686692                        $infinite_scroll = $this->_pagination_args['infinite_scroll'];
    687693                }
    688694
    689                 $output = '<span class="displaying-num">' . sprintf( _n( '%s item', '%s items', $total_items ), number_format_i18n( $total_items ) ) . '</span>';
     695                if ( 'top' === $which && isset( $this->screen->a11y_info['heading_pagination'] ) ) {
     696                        $heading = '<h2 class="screen-reader-text pagination-heading">' . $this->screen->a11y_info['heading_pagination'] . '</h2>';
     697                } else {
     698                        $heading = '';
     699                }
    690700
     701                $output = $heading . '<span class="displaying-num">' . sprintf( _n( '%s item', '%s items', $total_items ), number_format_i18n( $total_items ) ) . '</span>';
     702
    691703                $current = $this->get_pagenum();
    692704
    693705                $current_url = set_url_scheme( 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] );
     
    931943
    932944                $this->display_tablenav( 'top' );
    933945
     946                if ( isset( $this->screen->a11y_info['heading_list'] ) ) {
     947                        $heading = '<h2 class="screen-reader-text list-heading">' . $this->screen->a11y_info['heading_list'] . '</h2>';
     948                } else {
     949                        $heading = '';
     950                }
     951
     952                echo $heading;
     953
    934954?>
    935955<table class="wp-list-table <?php echo implode( ' ', $this->get_table_classes() ); ?>">
    936956        <thead>
  • src/wp-admin/includes/class-wp-media-list-table.php

     
    163163                global $mode;
    164164
    165165                $views = $this->get_views();
     166
     167                if ( isset( $this->screen->a11y_info['heading_views'] ) ) {
     168                        echo '<h2 class="screen-reader-text filter-views-heading">' . $this->screen->a11y_info['heading_views'] . '</h2>';
     169                }
    166170?>
    167171<div class="wp-filter">
    168172        <div class="filter-items">
  • src/wp-admin/includes/class-wp-plugin-install-list-table.php

     
    232232                /** This filter is documented in wp-admin/inclues/class-wp-list-table.php */
    233233                $views = apply_filters( "views_{$this->screen->id}", $views );
    234234
     235                if ( isset( $this->screen->a11y_info['heading_views'] ) ) {
     236                        echo '<h2 class="screen-reader-text filter-views-heading">' . $this->screen->a11y_info['heading_views'] . '</h2>';
     237                }
     238
    235239?>
    236240<div class="wp-filter">
    237241        <ul class="filter-links">
     
    266270
    267271?>
    268272<div class="wp-list-table <?php echo implode( ' ', $this->get_table_classes() ); ?>">
    269 
     273<?php
     274if ( isset( $this->screen->a11y_info['heading_list'] ) ) {
     275        echo '<h2 class="screen-reader-text list-heading">' . $this->screen->a11y_info['heading_list'] . '</h2>';
     276}
     277?>
    270278        <div id="the-list"<?php echo $data_attr; ?>>
    271279                <?php $this->display_rows_or_placeholder(); ?>
    272280        </div>
  • src/wp-admin/includes/screen.php

     
    322322        private $_help_sidebar = '';
    323323
    324324        /**
     325         * The accessibility information associated with the screen, if any.
     326         *
     327         * @since 4.3.0
     328         * @var array
     329         * @access public
     330         */
     331        public $a11y_info = array();
     332
     333        /**
    325334         * Stores old string-based help.
    326335         */
    327336        private static $_old_compat_help = array();
     
    781790                return $this->columns;
    782791        }
    783792
     793        /**
     794         * Add accessibility related informations.
     795         *
     796         * @since 4.3.0
     797         *
     798         * @param array $args An associative array with additional information useful for accessibility.
     799         * - string - heading_views      - The table views hidden heading text.
     800         * - string - heading_pagination - The table pagination hidden heading text.
     801         * - string - heading_list       - The table hidden heading text.
     802         */
     803        public function add_a11y_info( $args = array() ) {
     804                $defaults = array(
     805                        'heading_views'      => __( 'Filter items list' ),
     806                        'heading_pagination' => __( 'Items list navigation' ),
     807                        'heading_list'       => __( 'Items list' ),
     808                );
     809                $args = wp_parse_args( $args, $defaults );
     810
     811                $this->a11y_info = $args;
     812        }
     813
    784814        /**
    785815         * Render the screen's help section.
    786816         *
  • src/wp-admin/network/site-themes.php

     
    3333        '<p>' . __('<a href="https://wordpress.org/support/forum/multisite/" target="_blank">Support Forums</a>') . '</p>'
    3434);
    3535
     36get_current_screen()->add_a11y_info( array(
     37        'heading_views'      => __( 'Filter site themes list' ),
     38        'heading_pagination' => __( 'Site themes list navigation' ),
     39        'heading_list'       => __( 'Site themes list' ),
     40) );
     41
    3642$wp_list_table = _get_list_table('WP_MS_Themes_List_Table');
    3743
    3844$action = $wp_list_table->current_action();
  • src/wp-admin/network/site-users.php

     
    3636        '<p>' . __('<a href="https://wordpress.org/support/forum/multisite/" target="_blank">Support Forums</a>') . '</p>'
    3737);
    3838
     39get_current_screen()->add_a11y_info( array(
     40        'heading_views'      => __( 'Filter site users list' ),
     41        'heading_pagination' => __( 'Site users list navigation' ),
     42        'heading_list'       => __( 'Site users list' ),
     43) );
     44
    3945$_SERVER['REQUEST_URI'] = remove_query_arg( 'update', $_SERVER['REQUEST_URI'] );
    4046$referer = remove_query_arg( 'update', wp_get_referer() );
    4147
  • src/wp-admin/network/sites.php

     
    4646        '<p>' . __('<a href="https://wordpress.org/support/forum/multisite/" target="_blank">Support Forums</a>') . '</p>'
    4747);
    4848
     49get_current_screen()->add_a11y_info( array(
     50        'heading_pagination' => __( 'Sites list navigation' ),
     51        'heading_list'            => __( 'Sites list' ),
     52) );
     53
    4954$id = isset( $_REQUEST['id'] ) ? intval( $_REQUEST['id'] ) : 0;
    5055
    5156if ( isset( $_GET['action'] ) ) {
  • src/wp-admin/network/themes.php

     
    251251        '<p>' . __('<a href="https://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
    252252);
    253253
     254get_current_screen()->add_a11y_info( array(
     255        'heading_views'      => __( 'Filter themes list' ),
     256        'heading_pagination' => __( 'Themes list navigation' ),
     257        'heading_list'       => __( 'Themes list' ),
     258) );
     259
    254260$title = __('Themes');
    255261$parent_file = 'themes.php';
    256262
  • src/wp-admin/network/users.php

     
    276276        '<p>' . __('<a href="https://wordpress.org/support/forum/multisite/" target="_blank">Support Forums</a>') . '</p>'
    277277);
    278278
     279get_current_screen()->add_a11y_info( array(
     280        'heading_views'      => __( 'Filter users list' ),
     281        'heading_pagination' => __( 'Users list navigation' ),
     282        'heading_list'       => __( 'Users list' ),
     283) );
     284
    279285require_once( ABSPATH . 'wp-admin/admin-header.php' );
    280286
    281287if ( isset( $_REQUEST['updated'] ) && $_REQUEST['updated'] == 'true' && ! empty( $_REQUEST['action'] ) ) {
  • src/wp-admin/plugin-install.php

     
    8888        '<p>' . __('<a href="https://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
    8989);
    9090
     91get_current_screen()->add_a11y_info( array(
     92        'heading_views'      => __( 'Filter plugins list' ),
     93        'heading_pagination' => __( 'Plugins list navigation' ),
     94        'heading_list'       => __( 'Plugins list' ),
     95) );
     96
    9197/**
    9298 * WordPress Administration Template Header.
    9399 */
  • src/wp-admin/plugins.php

     
    392392        '<p>' . __('<a href="https://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
    393393);
    394394
     395get_current_screen()->add_a11y_info( array(
     396        'heading_views'      => __( 'Filter plugins list' ),
     397        'heading_pagination' => __( 'Plugins list navigation' ),
     398        'heading_list'       => __( 'Plugins list' ),
     399) );
     400
    395401$title = __('Plugins');
    396402$parent_file = 'plugins.php';
    397403
  • src/wp-admin/theme-install.php

     
    126126        <?php install_themes_upload(); ?>
    127127        </div>
    128128
     129        <h2 class="screen-reader-text"><?php _e( 'Filter themes list' ); ?></h2>
     130
    129131        <div class="wp-filter">
    130132                <div class="filter-count">
    131133                        <span class="count theme-count"></span>
     
    169171                        </div>
    170172                </div>
    171173        </div>
     174        <h2 class="screen-reader-text"><?php _e( 'Themes list' ); ?></h2>
    172175        <div class="theme-browser content-filterable"></div>
    173176        <div class="theme-install-overlay wp-full-overlay expanded"></div>
    174177
  • src/wp-admin/upload.php

     
    202202        '<p>' . __( '<a href="https://wordpress.org/support/" target="_blank">Support Forums</a>' ) . '</p>'
    203203);
    204204
     205get_current_screen()->add_a11y_info( array(
     206        'heading_views'      => __( 'Filter media items list' ),
     207        'heading_pagination' => __( 'Media items list navigation' ),
     208        'heading_list'       => __( 'Media items list' ),
     209) );
     210
    205211require_once( ABSPATH . 'wp-admin/admin-header.php' );
    206212?>
    207213
  • src/wp-admin/users.php

     
    6363    '<p>' . __('<a href="https://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
    6464);
    6565
     66get_current_screen()->add_a11y_info( array(
     67        'heading_views'      => __( 'Filter users list' ),
     68        'heading_pagination' => __( 'Users list navigation' ),
     69        'heading_list'       => __( 'Users list' ),
     70) );
     71
    6672if ( empty($_REQUEST) ) {
    6773        $referer = '<input type="hidden" name="wp_http_referer" value="'. esc_attr( wp_unslash( $_SERVER['REQUEST_URI'] ) ) . '" />';
    6874} elseif ( isset($_REQUEST['wp_http_referer']) ) {
  • src/wp-includes/post.php

     
    16161616 *                       ones the default is 'Parent Page:'.
    16171617 * - all_items - String for the submenu. Default is All Posts/All Pages.
    16181618 * - menu_name - Default is the same as `name`.
     1619 * - views - String for the table views hidden heading.
     1620 * - pagination - String for the table pagination hidden heading.
     1621 * - list - String for the table hidden heading.
    16191622 *
    16201623 * Above, the first default value is for non-hierarchical post types (like posts)
    16211624 * and the second one is for hierarchical post types (like pages).
     
    16391642                'not_found' => array( __('No posts found.'), __('No pages found.') ),
    16401643                'not_found_in_trash' => array( __('No posts found in Trash.'), __('No pages found in Trash.') ),
    16411644                'parent_item_colon' => array( null, __('Parent Page:') ),
    1642                 'all_items' => array( __( 'All Posts' ), __( 'All Pages' ) )
     1645                'all_items' => array( __( 'All Posts' ), __( 'All Pages' ) ),
     1646                'views' => array( __( 'Filter posts list' ), __( 'Filter pages list' ) ),
     1647                'pagination' => array( __( 'Posts list navigation' ), __( 'Pages list navigation' ) ),
     1648                'list' => array( __( 'Posts list' ), __( 'Pages list' ) ),
    16431649        );
    16441650        $nohier_vs_hier_defaults['menu_name'] = $nohier_vs_hier_defaults['name'];
    16451651
  • src/wp-includes/taxonomy.php

     
    472472 * - add_or_remove_items - This string isn't used on hierarchical taxonomies. Default is "Add or remove tags", used in the meta box when JavaScript is disabled.
    473473 * - choose_from_most_used - This string isn't used on hierarchical taxonomies. Default is "Choose from the most used tags", used in the meta box.
    474474 * - not_found - Default is "No tags found"/"No categories found", used in the meta box and taxonomy list table.
     475 * - pagination - String for the table pagination hidden heading.
     476 * - list - String for the table hidden heading.
    475477 *
    476478 * Above, the first default value is for non-hierarchical taxonomies (like tags) and the second one is for hierarchical taxonomies (like categories).
    477479 *
     
    509511                'add_or_remove_items' => array( __( 'Add or remove tags' ), null ),
    510512                'choose_from_most_used' => array( __( 'Choose from the most used tags' ), null ),
    511513                'not_found' => array( __( 'No tags found.' ), __( 'No categories found.' ) ),
     514                'pagination' => array( __( 'Tags list navigation' ), __( 'Categories list navigation' ) ),
     515                'list' => array( __( 'Tags list' ), __( 'Categories list' ) ),
    512516        );
    513517        $nohier_vs_hier_defaults['menu_name'] = $nohier_vs_hier_defaults['name'];
    514518