WP_Dependencies::recurse_deps()protectedWP 4.0.0

Recursively search the passed dependency tree for a handle.

Метод класса: WP_Dependencies{}

Хуков нет.

Возвращает

true|false. Whether the handle is found after recursively searching the dependency tree.

Использование

// protected - в коде основоного (родительского) или дочернего класса
$result = $this->recurse_deps( $queue, $handle );
$queue(string[]) (обязательный)
An array of queued _WP_Dependency handles.
$handle(строка) (обязательный)
Name of the item. Should be unique.

Список изменений

С версии 4.0.0 Введена.

Код WP_Dependencies::recurse_deps() WP 6.5.2

protected function recurse_deps( $queue, $handle ) {
	if ( isset( $this->all_queued_deps ) ) {
		return isset( $this->all_queued_deps[ $handle ] );
	}

	$all_deps = array_fill_keys( $queue, true );
	$queues   = array();
	$done     = array();

	while ( $queue ) {
		foreach ( $queue as $queued ) {
			if ( ! isset( $done[ $queued ] ) && isset( $this->registered[ $queued ] ) ) {
				$deps = $this->registered[ $queued ]->deps;
				if ( $deps ) {
					$all_deps += array_fill_keys( $deps, true );
					array_push( $queues, $deps );
				}
				$done[ $queued ] = true;
			}
		}
		$queue = array_pop( $queues );
	}

	$this->all_queued_deps = $all_deps;

	return isset( $this->all_queued_deps[ $handle ] );
}