функция
since 3.0.0
apply_filters_ref_array()
Проверено на WordPress 6.9, обновлено Источник: WordPress Developer Resources.
Сигнатура
apply_filters_ref_array( string $hook_name, array $args ): mixed
Описание
См. alsoapply_filters(): эта функция идентична, но аргументы, передаваемые функциям, привязанным к $hook_name, передаются в виде массива.
Оригинал (английский)
- apply_filters(): This function is identical, but the arguments passed to the functions hooked to
$hook_nameare supplied using an array.
Параметры
$hook_name
string
обязательный
Имя хука-фильтра.
$args
array
обязательный
Аргументы, передаваемые функциям, привязанным к $hook_name.
Возвращаемое значение
mixed
Исходный код
wp-includes/plugin.php:228
function apply_filters_ref_array( $hook_name, $args ) {
global $wp_filter, $wp_filters, $wp_current_filter;
if ( ! isset( $wp_filters[ $hook_name ] ) ) {
$wp_filters[ $hook_name ] = 1;
} else {
++$wp_filters[ $hook_name ];
}
// Do 'all' actions first.
if ( isset( $wp_filter['all'] ) ) {
$wp_current_filter[] = $hook_name;
$all_args = func_get_args(); // phpcs:ignore PHPCompatibility.FunctionUse.ArgumentFunctionsReportCurrentValue.NeedsInspection
_wp_call_all_hook( $all_args );
}
if ( ! isset( $wp_filter[ $hook_name ] ) ) {
if ( isset( $wp_filter['all'] ) ) {
array_pop( $wp_current_filter );
}
return $args[0];
}
if ( ! isset( $wp_filter['all'] ) ) {
$wp_current_filter[] = $hook_name;
}
$filtered = $wp_filter[ $hook_name ]->apply_filters( $args[0], $args );
array_pop( $wp_current_filter );
return $filtered;
}
История изменений
| Версия | Описание |
|---|---|
| 3.0.0 | Introduced. |

