apply_filters() 函數用來創建一個過濾器,大多數被用在函數中,是 WordPress 插件機制中非常重要的一個函數,能讓其它的主題和插件對一個值進行修改過濾。
用法
|
1 |
apply_filters($tag,$value,$var...); |
參數
$tag
(字符串)(必須) 過濾器的名字。
默認值:None
$value
(混合)(必須) 要過濾的值,如果沒人過濾則直接返回這個值。
$var
(混合)(可選) 傳給過濾函數額外的變量參數,輔助過濾函數對返回值進行操作,可以添加無限個。
返回值
(混合) 過濾後的值,如果沒人過濾則直接返回 $value 的值。
例子
沒人過濾:
|
1 |
echoapply_filters('test','可以被修改的值'); |
打印結果:
可以被修改的值
有人過濾:
|
functiontest_func(){ return'修改值'; } add_filter('test','test_func'); echoapply_filters('test','可以被修改的值'); |
打印結果:
修改值
接收參數:
|
functiontest_func(){ return'修改值'; } add_filter('test','test_func'); functiontest_func2($text){ return$text.'2'; } add_filter('test','test_func2'); echoapply_filters('test','可以被修改的值'); |
多個參數:
|
functiontest_func($text,$var,$var2){ return'修改值'.$var1.$var2; } add_action('test','test_func',10,3); echoapply_filters('test','可以被修改的值','輔助值 1','輔助值 2'); |
其它
此函數位於:wp-includes/plugin.php
相關的函數:https://www.weixiaoduo.com/tag/hook