[wp-hackers] Getting the name of the hook triggered

John Ellmore jnellmore at gmail.com
Mon Mar 26 00:12:28 UTC 2012


This is perfect. Thanks!



On Sun, Mar 25, 2012 at 6:56 PM, Aaron Jorbin <aaron at jorb.in> wrote:

> Check out the current_filter function -
> http://phpxref.ftwr.co.uk/wordpress/wp-includes/plugin.php.source.html#l297
>
>
> http://aaron.jorb.in
> twitter: twitter.com/aaronjorbin
>
>
> On Sun, Mar 25, 2012 at 7:49 PM, John Ellmore <jnellmore at gmail.com> wrote:
>
> > Hi all,
> >
> > I'm writing a plugin for WordPress that enables notifications to be sent
> to
> > a user upon on any given hook being triggered. The user will be able to
> > specify which hooks they'd like to be alerted to. An example would be
> > alerting a user when a post is published; the user would setup a
> > notification (through an admin panel) for the "publish_post" hook and
> would
> > receive a notification (via email, SMS, carrier pigeon, etc.) when that
> > hook was triggered.
> >
> > In addition, each hook will be treated slightly differently; a
> "save_post"
> > notification, for example, might also include information about that
> post.
> > So the plugin will have code that is specific to each hook.
> >
> > The way I'd like to do it is as follows:
> >
> > <?php
> >
> > $listen_for = get_hooks_list(); // get the hooks to listen from database
> or
> > option
> >
> > foreach ($listen_for as $hook) {
> >        add_action($hook, 'my_plugin_handle_hook');
> > }
> >
> > function my_plugin_handle_hook() {
> >        // figure out which hook was triggered, execute the appropriate
> code
> >        if ($hookname == 'save_post') do_something_here();
> >        else if ($hookname == 'publish_post') do_something_else();
> > }
> >
> > ?>
> >
> > Unfortunately, as far as I can tell, there's no way to determine the name
> > of the hook that triggered an event. I'd really like to structure my
> plugin
> > in a way that's extensible and allows other plugins to add custom
> > functionality via hooks, but this issue is preventing me doing so.
> >
> > So, my question is: Is there any way to figure out the name of the hook
> > that is triggering the callback? If not, any suggestions on how to
> > structure my plugin in an extensible manner?
> >
> > Thanks!
> > John
> > _______________________________________________
> > wp-hackers mailing list
> > wp-hackers at lists.automattic.com
> > http://lists.automattic.com/mailman/listinfo/wp-hackers
> >
> _______________________________________________
> wp-hackers mailing list
> wp-hackers at lists.automattic.com
> http://lists.automattic.com/mailman/listinfo/wp-hackers
>


More information about the wp-hackers mailing list