Finds hierarchy loops using a callback function that maps object IDs to parent IDs.
Parameters
$callback
callablerequired- Function that accepts ( ID, $callback_args ) and outputs parent_ID.
$start
intrequired- The ID to start the loop check at.
$start_parent
intrequired- The parent_ID of $start to use instead of calling $callback( $start ).
Use null to always use $callback. $callback_args
arrayoptional- Additional arguments to send to $callback.
Default:
array()
Source
function wp_find_hierarchy_loop( $callback, $start, $start_parent, $callback_args = array() ) {
$override = is_null( $start_parent ) ? array() : array( $start => $start_parent );
$arbitrary_loop_member = wp_find_hierarchy_loop_tortoise_hare( $callback, $start, $override, $callback_args );
if ( ! $arbitrary_loop_member ) {
return array();
}
return wp_find_hierarchy_loop_tortoise_hare( $callback, $arbitrary_loop_member, $override, $callback_args, true );
}
Changelog
Version | Description |
---|---|
3.1.0 | Introduced. |
User Contributed Notes
You must log in before being able to contribute a note or feedback.