WordPress.org

Make WordPress Core


Ignore:
Timestamp:
09/09/2021 06:35:34 PM (6 weeks ago)
Author:
hellofromTonya
Message:

Code Modernization: Fix parameter name mismatches for parent/child classes in WP_REST_Controller::prepare_item_for_response().

In each child and grandchild class, renames the first parameter to match the parent's method signature.

Why? PHP 8 introduces the ability to pass named arguments to function/method calls. This means the child and parent method signatures (i.e. parameter names) need to match.

Changes for readability:

  • @since clearly specifies the original parameter name and its new name as well as why the change happened.
  • In methods longer than a single line, the generic parameter is reassigned to the original parameter restoring it for context for use within the method. An inline comment is added to explain why this reassignment is made.

Follow-up to [38832], [39011], [39015], [39021], [39024], [39025], [39031], [39036], [43519], [43735], [43739], [43768], [46821], [48173], [48242], [49088], [50995], [51003], [51021].

Props jrf, hellofromTonya, sergeybiryukov, azaozz, desrosj, johnbillion.
See #51553.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-includes/rest-api/endpoints/class-wp-rest-taxonomies-controller.php

    r51000 r51786  
    201201     *
    202202     * @since 4.7.0
    203      *
    204      * @param WP_Taxonomy     $taxonomy Taxonomy data.
    205      * @param WP_REST_Request $request  Full details about the request.
     203     * @since 5.9.0 Renamed `$taxonomy` to `$item` to match parent class for PHP 8 named parameter support.
     204     *
     205     * @param WP_Taxonomy     $item    Taxonomy data.
     206     * @param WP_REST_Request $request Full details about the request.
    206207     * @return WP_REST_Response Response object.
    207208     */
    208     public function prepare_item_for_response( $taxonomy, $request ) {
    209         $base = ! empty( $taxonomy->rest_base ) ? $taxonomy->rest_base : $taxonomy->name;
     209    public function prepare_item_for_response( $item, $request ) {
     210        // Restores the more descriptive, specific name for use within this method.
     211        $taxonomy = $item;
     212        $base     = ! empty( $taxonomy->rest_base ) ? $taxonomy->rest_base : $taxonomy->name;
    210213
    211214        $fields = $this->get_fields_for_response( $request );
Note: See TracChangeset for help on using the changeset viewer.