wp_find_hierarchy_loop()
Finds hierarchy loops using a callback function that maps object IDs to parent IDs.
Internal function — this function is designed to be used by the kernel itself. It is not recommended to use this function in your code.
No Hooks.
Returns
Array. IDs of all members of loop.
Usage
wp_find_hierarchy_loop( $callback, $start, $start_parent, $callback_args );
- $callback(callable) (required)
- Function that accepts ( ID,
$callback_args) and outputs parent_ID. - $start(int) (required)
- The ID to start the loop check at.
- $start_parent(int) (required)
- The parent_ID of
$startto use instead of calling$callback($start). Use null to always use$callback. - $callback_args(array)
- Additional arguments to send to
$callback.
Default:empty array
Changelog
| Since 3.1.0 | Introduced. |
wp_find_hierarchy_loop() wp find hierarchy loop code WP 7.0.2
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 );
}