是的,您需要先删除它,然后再添加一个。你可以打电话remove_filter 功能如下:
remove_filter( \'wp_core_filter_hook\', \'wp_core_filter_hook_handler\', 10 );
请注意传递给函数的第三个参数:它是priority,它应该与最初钩住函数时定义的相同,否则过滤器钩子将不会被移除。
如果要删除所有挂钩处理程序,可以调用remove_all_filters 功能:
remove_all_filter( \'wp_core_filter_hook\' );
// or with priority
remove_all_filter( \'wp_core_filter_hook\', 10 );
此函数采用两个参数:过滤器名称和优先级(可选)。如果传递优先级,则将删除所有具有指定优先级的处理程序。
最后,如果要检查是否已为挂钩注册了任何筛选器,请使用函数has_filter. 它有两个参数:过滤器名称和函数名称(可选)。