我应该删除_Filter以替换筛选器吗?

时间:2012-06-06 作者:Jenny

如果一个插件通过“add\\u filter”修改了一个wp的过滤器,而我想放弃修改并通过我自己的代码修改wp的过滤器。在添加自己的过滤器之前,是否应该删除插件的过滤器?

1 个回复
最合适的回答,由SO网友:Eugene Manuilov 整理而成

是的,您需要先删除它,然后再添加一个。你可以打电话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. 它有两个参数:过滤器名称和函数名称(可选)。

结束

相关推荐

Search options/filters

我正在尝试向侧栏搜索框添加一些复选框选项,similar to this, 用户可以选择是否搜索All Words, Some Word, 或者Entire phrase.我确实在搜索后找到了这个-Wordpress Search Phrases. “句子”选项似乎很有效,但其他选项则不太好。下面的代码是我目前正在处理的,但如果能得到一些帮助使其正常工作,我将不胜感激。非常感谢S(我不想为此使用插件)。<form action=\"<?php bloginfo(\'home\'); ?>