add_filter()

目录

    add_filter() 是 WordPress 提供的一个过滤器钩子函数,我们可以通过此函数在程序运行时修改各种类型的内部数据。这个钩子的使用方法很简单,我们仅需用它构造一个回调函数即可,如下所示:

    function example_callback( $example ) {
        // 对 $example 的一系列处理过程
        return $example;
    }
    add_filter( 'example_filter', 'example_callback' );

    通过将参数 $example 传递给回调函数,在经过一系列处理后返回该 $example 的新值。add_filter() 一共有四个参数,其调用方法如下所示:

    add_filter( string $tag, callable $function_to_add, int $priority = 10,int $accepted_args = 1 )

    $tag:必填(字符串)。挂载回调函数的过滤器名称。

    $function_to_add:必填(可调用的函数)。过滤器应用时调用的回调函数。

    $priority:可选(整型)。用于指定与特定操作关联的函数的执行顺序,默认为10。

    $accepted_args:可选(整型)。add_filter() 过滤器可接受的参数个数,默认为1。

    由最后一个参数我们可以了解到 add_filter() 钩子的回调函数 $function_to_add 可以接受零到多个参数,这取决于 add_filter() 最后一个参数的设置。

    最后,我们看下 add_filter() 函数的具体定义,其位于 wp-includes/plugin.php 文件中,具体代码如下:

    function add_filter( $tag, $function_to_add, $priority = 10, $accepted_args = 1 ) {
    	global $wp_filter;
    	if ( ! isset( $wp_filter[ $tag ] ) ) {
    		$wp_filter[ $tag ] = new WP_Hook();
    	}
    	$wp_filter[ $tag ]->add_filter( $tag, $function_to_add, $priority, $accepted_args );
    	return true;
    }

    参考文档:https://developer.wordpress.org/reference/functions/add_filter/

    0 条回复 A文章作者 M管理员
      暂无讨论,说说你的看法吧
    个人中心
    购物车
    优惠劵
    今日签到
    有新私信 私信列表
    搜索