Overide a function that is inside a plugin

I would like to change the behavior of one function in a plugin. Instead of rewriting the file and having to deal with updates I would prefer a solution that works similar to the way add_filter works for the wordpress core. Is this possible using either php or wordpress?

Related posts

Leave a Reply

2 comments

  1. If there are hooks in the function, this is possible, if not, there may be pluggable functions, where you can replace their function with your own custom function. I have not seen pluggables in plugins frequently, but with most of the more popular plugins, you do see actions and filters.

    You may be able to interact with the plugin by changing the behavior of the functions which it calls to your desired effect. This can be tricky, and often results in hacky solutions, but it’s better than nothing.

    If there is not a way to interact with the plugin, then you can fork the plugin’s code. Naturally, this is the least desirable, but it may be your only option.

  2. I think you should send a message to the author of the plugin, so that he would have added hooks do_action() and apply_filters() to a desired location in the code. Then even when you upgrade you will not lose functionality.
    Or use that constructions if(function_exists('plugin-function'))