Make WordPress Core

Changeset 48749


Ignore:
Timestamp:
08/07/2020 03:24:10 PM (4 years ago)
Author:
SergeyBiryukov
Message:

Accessibility: Themes: Only unlink custom logo on the home page if the theme declares support for that.

To accommodate for the change, the custom-logo theme feature now accepts the unlink-homepage-logo parameter.

If and when the logo is linked on the home page, the link has the aria-current attribute for better accessibility.

Follow-up to [48039], [48283].

Props sabernhardt, audrasjb, johnstonphilip, demetris.
Fixes #37011.

Location:
trunk/src/wp-includes
Files:
2 edited

Legend:

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

    r48674 r48749  
    10221022        );
    10231023
    1024         if ( is_front_page() ) {
     1024        $unlink_homepage_logo = (bool) get_theme_support( 'custom-logo', 'unlink-homepage-logo' );
     1025
     1026        if ( $unlink_homepage_logo && is_front_page() && ! is_paged() ) {
    10251027            /*
    10261028             * If on the home page, set the logo alt attribute to an empty string,
     
    10561058        $image = wp_get_attachment_image( $custom_logo_id, 'full', false, $custom_logo_attr );
    10571059
    1058         if ( is_front_page() ) {
     1060        if ( $unlink_homepage_logo && is_front_page() && ! is_paged() ) {
    10591061            // If on the home page, don't link the logo to home.
    10601062            $html = sprintf(
     
    10631065            );
    10641066        } else {
     1067            $aria_current = is_front_page() && ! is_paged() ? ' aria-current="page"' : '';
     1068
    10651069            $html = sprintf(
    1066                 '<a href="%1$s" class="custom-logo-link" rel="home">%2$s</a>',
     1070                '<a href="%1$s" class="custom-logo-link" rel="home"%2$s>%3$s</a>',
    10671071                esc_url( home_url( '/' ) ),
     1072                $aria_current,
    10681073                $image
    10691074            );
  • trunk/src/wp-includes/theme.php

    r48612 r48749  
    24732473 *              by adding it to the function signature.
    24742474 * @since 5.5.0 The `core-block-patterns` feature was added and is enabled by default.
     2475 * @since 5.5.0 The `custom-logo` feature now also accepts 'unlink-homepage-logo'.
    24752476 *
    24762477 * @global array $_wp_theme_features
     
    25392540            }
    25402541            $defaults = array(
    2541                 'width'       => null,
    2542                 'height'      => null,
    2543                 'flex-width'  => false,
    2544                 'flex-height' => false,
    2545                 'header-text' => '',
     2542                'width'                => null,
     2543                'height'               => null,
     2544                'flex-width'           => false,
     2545                'flex-height'          => false,
     2546                'header-text'          => '',
     2547                'unlink-homepage-logo' => false,
    25462548            );
    25472549            $args[0]  = wp_parse_args( array_intersect_key( $args[0], $defaults ), $defaults );
Note: See TracChangeset for help on using the changeset viewer.