执行挂钩在特定操作挂钩上的函数,指定数组中的参数。

原型

do_action_ref_array( string $tag, array $args )

参数

$tag (string) (Required) 要执行的操作的名称。

$args (array) (Required) 提供给函数的参数挂钩到$ tag。

源文件

路径:wp-includes/plugin.php

<?php
...
function do_action_ref_array($tag, $args) {
	global $wp_filter, $wp_actions, $wp_current_filter;
	if ( ! isset($wp_actions[$tag]) )
		$wp_actions[$tag] = 1;
	else
		++$wp_actions[$tag];
	// Do 'all' actions first
	if ( isset($wp_filter['all']) ) {
		$wp_current_filter[] = $tag;
		$all_args = func_get_args();
		_wp_call_all_hook($all_args);
	}
	if ( !isset($wp_filter[$tag]) ) {
		if ( isset($wp_filter['all']) )
			array_pop($wp_current_filter);
		return;
	}
	if ( !isset($wp_filter['all']) )
		$wp_current_filter[] = $tag;
	$wp_filter[ $tag ]->do_action( $args );
	array_pop($wp_current_filter);
}
...
?>

其他

英文文档:https://developer.wordpress.org/reference/functions/do_action_ref_array/