详解WordPress中创建和添加过滤器的相关PHP函数,wordpress过滤器
apply_filters()(创建过滤器)
apply_filters() 函数用来创建一个过滤器,大多数被用在函数中,是 WordPress 插件机制中非常重要的一个函数,能让其它的主题和插件对一个值进行修改过滤。
用法
apply_filters( $tag, $value, $var... );
参数
$tag
(字符串)(必须)过滤器的名字。
默认值:None
$value
(混合)(必须)要过滤的值,如果没人过滤则直接返回这个值。
$var
(混合) (可选)传给过滤函数额外的变量参数,辅助过滤函数对返回值进行操作,可以添加无限个。
返回值
(混合)过滤后的值,如果没人过滤则直接返回 $value 的值。
例子
没人过滤:
echo apply_filters( 'test', '可以被修改的值' );
打印结果:
可以被修改的值
有人过滤:
function test_func(){ return '修改值'; } add_filter( 'test', 'test_func' ); echo apply_filters( 'test', '可以被修改的值' );
打印结果:
修改值
接收参数:
function test_func(){ return '修改值'; } add_filter( 'test', 'test_func' ); function test_func2( $text ){ return $text . '2'; } add_filter( 'test', 'test_func2' ); echo apply_filters( 'test', '可以被修改的值' );
多个参数:
function test_func( $text, $var, $var2 ){ return '修改值' . $var1 . $var2; } add_action( 'test', 'test_func', 10, 3 ); echo apply_filters( 'test', '可以被修改的值', '辅助值1', '辅助值2' );
其它
此函数位于:wp-includes/plugin.php
add_filter()(添加过滤器)
add_filter() 可以挂载一个函数到指定的过滤器上。
用法
add_filter( $tag, $function_to_add, $priority, $accepted_args );
参数
$tag
(字符串)(必须)所挂载的过滤器名字(和目标 apply_filters() 函数的 $tag 属性一样)。
默认值:None
$function_to_add
(回调)(必须)要挂载的回调函数,参考 PHP 回调函数类型文档。
默认值:None
$priority
(整数)(可选)执行顺序,越小函数越先被执行。
默认值:10
$accepted_args
(整数)(可选)回调函数接收的参数数量,设置多个可以接收更多 apply_filters() 函数传进来的参数。
默认值:1
返回值
(布尔)总是 True
例子
function test_func( $text, $var1, $var2 ){ return $text . $var1 . $var2; } add_action( 'test', 'test_func', 10, 3 ); echo apply_filters( 'test', '参数2', '参数3', '参数4' );
打印:
test参数2参数3
其它
该函数位于:wp-includes/plugin.php

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

SublimeText3漢化版
中文版,非常好用

Dreamweaver Mac版
視覺化網頁開發工具

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具