Make WordPress Core


Ignore:
Timestamp:
07/05/2016 03:21:44 PM (9 years ago)
Author:
ocean90
Message:

Dashboard: Don't add a "Configure" link to the toggle button.

The HTML for the toggle gets appended to the widget name which is later used for the widget title and the screen reader text of the toggle button. Storing the original widget name in the arguments allows us to use the name without the HTML for the screen reader text and doesn't require further changes by plugin developers.

Props nicholas_io, swissspidy.
Fixes #35021.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-admin/includes/template.php

    r37737 r37972  
    10281028                    echo '<div id="' . $box['id'] . '" class="postbox ' . postbox_classes($box['id'], $page) . $hidden_class . '" ' . '>' . "\n";
    10291029                    if ( 'dashboard_browser_nag' != $box['id'] ) {
     1030                        $widget_title = $box[ 'title' ];
     1031
     1032                        if ( is_array( $box[ 'args' ] ) && isset( $box[ 'args' ][ '__widget_basename' ] ) ) {
     1033                            $widget_title = esc_html( $box[ 'args' ][ '__widget_basename' ] );
     1034                            // Do not pass this parameter to the user callback function.
     1035                            unset( $box[ 'args' ][ '__widget_basename' ] );
     1036                        }
     1037
    10301038                        echo '<button type="button" class="handlediv button-link" aria-expanded="true">';
    1031                         echo '<span class="screen-reader-text">' . sprintf( __( 'Toggle panel: %s' ), $box['title'] ) . '</span>';
     1039                        echo '<span class="screen-reader-text">' . sprintf( __( 'Toggle panel: %s' ), $widget_title ) . '</span>';
    10321040                        echo '<span class="toggle-indicator" aria-hidden="true"></span>';
    10331041                        echo '</button>';
Note: See TracChangeset for help on using the changeset viewer.