Edit plugin filter

时间:2016-11-09 作者:user2806026

我试图编辑从插件添加的过滤器,而不编辑插件本身。所讨论的插件是Gravity表单用户注册。

我在插件代码中找到了filter函数,目前我正在尝试删除它,以便在修改后再次添加它。然而,我不知道如何移除过滤器。在删除操作时,我通常以较低的优先级钩住同一个钩子,然后将其从那里删除。然而,这似乎有所不同。

过滤器添加如下:

/**
 * Initializes GFAddon and adds the actions that we need
 *
 * @see GFAddon
 */
public function init() {

[...]
    add_filter( \'gform_validation\',                   array( $this, \'validate\' ) );
[...]
我应该为“$this”创建一个新的实例吗?如何从哪个钩子调用我的删除函数?

1 个回复
SO网友:Benoti

只是一个提示。。。

如果是你的情况,我会尝试移除过滤器

remove_filter( \'gform_validation\', array( \'classname\', \'validate\' ) );
用过滤器所在的类名重命名classname。

并添加过滤器和函数

add_filter( \'gform_validation\', \'your_validate\' ) );
如果要访问其他类(和公共函数):classname::validate();

希望有帮助

相关推荐

Modifying WordPress plugins

关于对WordPress插件进行更改,我有一个非常简单的问题。我为我的问题的简单性道歉,因为我对使用开源代码和插件开发新手非常陌生。我发现了一个插件,它为我正在进行的一个项目提供了一个很好的解决方案。然而,为了更好地满足我的需要,我修改了代码。插件有一个;GPLv2或更高版本“;许可证,基于this 似乎是说对插件的修改很好,只要我注意到我所做的任何更改,并将插件发布在;GPLv2或更高版本“;许可证也是。由于我对插件所做的修改,我希望能够将其作为客户端工作的一部分提供给其他人。然而,我不确定前进的最佳方