Make WordPress Core


Ignore:
Timestamp:
01/10/2026 06:28:18 PM (9 months ago)
Author:
westonruter
Message:

Widgets: Ensure a widget is registered prior to checking its ID in is_active_widget().

This avoids a possible PHP warning due to an undefined array key.

Developed in ​https://github.com/WordPress/wordpress-develop/pull/10710

Follow-up to [11090], [7080].

Props sageth, josephscott, Ipstenu, mindctrl, westonruter.
See #8441, #6023.
Fixes #57518.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/tests/phpunit/tests/widgets/wpBlockThemeRegisterClassicSidebar.php

    r55200 r61466  
    3333                global $wp_registered_sidebars;
    3434
     35                // Register a sidebar for testing if none exist.
     36                if ( empty( $wp_registered_sidebars ) ) {
     37                        register_sidebar( array( 'id' => 'test-sidebar' ) );
     38                }
     39
    3540                $sidebar_id = array_key_first( $wp_registered_sidebars );
    3641                $this->assertNotEmpty( $sidebar_id );
    … …  
    4247        public function test_should_reregister_previous_theme_sidebar() {
    4348                global $wp_registered_sidebars;
     49
     50                // Register a sidebar for testing if none exist.
     51                if ( empty( $wp_registered_sidebars ) ) {
     52                        register_sidebar( array( 'id' => 'test-sidebar' ) );
     53                }
    4454
    4555                $sidebar_id = array_key_first( $wp_registered_sidebars );
Note: See TracChangeset for help on using the changeset viewer.