Code Modernisation: Replace call_user_func_array() in wp-includes/class-wp-walker.php with dynamic function calls.

Props jrf.
See #47678.

git-svn-id: https://develop.svn.wordpress.org/trunk@46143 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Sergey Biryukov 2019-09-15 11:49:51 +00:00
parent 927098e5aa
commit 1418bd0ffa

View File

@ -141,8 +141,7 @@ class Walker {
$args[0]['has_children'] = $this->has_children; // Back-compat.
}
$cb_args = array_merge( array( &$output, $element, $depth ), $args );
call_user_func_array( array( $this, 'start_el' ), $cb_args );
$this->start_el( $output, $element, $depth, ...array_values( $args ) );
// descend only when the depth is right and there are childrens for this element
if ( ( $max_depth == 0 || $max_depth > $depth + 1 ) && isset( $children_elements[ $id ] ) ) {
@ -152,8 +151,7 @@ class Walker {
if ( ! isset( $newlevel ) ) {
$newlevel = true;
//start the child delimiter
$cb_args = array_merge( array( &$output, $depth ), $args );
call_user_func_array( array( $this, 'start_lvl' ), $cb_args );
$this->start_lvl( $output, $depth, ...array_values( $args ) );
}
$this->display_element( $child, $children_elements, $max_depth, $depth + 1, $args, $output );
}
@ -162,13 +160,11 @@ class Walker {
if ( isset( $newlevel ) && $newlevel ) {
//end the child delimiter
$cb_args = array_merge( array( &$output, $depth ), $args );
call_user_func_array( array( $this, 'end_lvl' ), $cb_args );
$this->end_lvl( $output, $depth, ...array_values( $args ) );
}
//end this element
$cb_args = array_merge( array( &$output, $element, $depth ), $args );
call_user_func_array( array( $this, 'end_el' ), $cb_args );
$this->end_el( $output, $element, $depth, ...array_values( $args ) );
}
/**