Make WordPress Core


Ignore:
Timestamp:
02/18/2026 04:38:42 AM (6 months ago)
Author:
westonruter
Message:

Customize: Ensure WP_Customize_Setting::update() and subclass overrides return consistent types.

This addresses PHPStan type check issues.

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

Props westonruter, peterwilsoncc, justlevine.
See #64238, #61175.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-includes/customize/class-wp-customize-nav-menu-item-setting.php

    r61433 r61670  
    760760         *
    761761         * @since 4.3.0
     762         * @since 7.0.0 Return type updated from null|void to bool for compatibility with base class.
    762763         *
    763764         * @see wp_update_nav_menu_item()
     
    766767         *                           entirely. See WP_Customize_Nav_Menu_Item_Setting::$default for what the value
    767768         *                           should consist of.
    768          * @return null|void
     769         * @return bool Whether updated.
    769770         */
    770771        protected function update( $value ) {
    771772                if ( $this->is_updated ) {
    772                         return;
     773                        return ( 'error' !== $this->update_status );
    773774                }
    774775
     
    807808                                        $this->update_status = 'error';
    808809                                        $this->update_error  = new WP_Error( 'unexpected_nav_menu_setting' );
    809                                         return;
     810                                        return false;
    810811                                }
    811812
     
    813814                                        $this->update_status = 'error';
    814815                                        $this->update_error  = new WP_Error( 'nav_menu_setting_failure' );
    815                                         return;
     816                                        return false;
    816817                                }
    817818
     
    819820                                        $this->update_status = 'error';
    820821                                        $this->update_error  = new WP_Error( 'unexpected_previous_term_id' );
    821                                         return;
     822                                        return false;
    822823                                }
    823824
     
    833834                                        $this->update_status = 'error';
    834835                                        $this->update_error  = new WP_Error( 'unexpected_nav_menu_item_setting' );
    835                                         return;
     836                                        return false;
    836837                                }
    837838
     
    839840                                        $this->update_status = 'error';
    840841                                        $this->update_error  = new WP_Error( 'nav_menu_item_setting_failure' );
    841                                         return;
     842                                        return false;
    842843                                }
    843844
     
    845846                                        $this->update_status = 'error';
    846847                                        $this->update_error  = new WP_Error( 'unexpected_previous_post_id' );
    847                                         return;
     848                                        return false;
    848849                                }
    849850
     
    887888                        }
    888889                }
     890
     891                return ( 'error' !== $this->update_status );
    889892        }
    890893
Note: See TracChangeset for help on using the changeset viewer.