When we fire up:
do_action( 'foo' );
we are actually calling:
do_action( 'foo', '' );
That’s because how it’s defined; With the empty string as the default input argument:
function do_action($tag, $arg = '') {
// ...
}
So the action’s callback get’s the empty string as it’s first input argument.
This has been like this since at least WordPress version 1.5.
Since WordPress 4.6, do_action() is a wrapper of WP_Hook::do_action();
What if …
It looks like if it would be defined without the argument part as:
function do_action($tag) {
// ...
}
and with corresponding modifications to this part:
$args = array();
if ( is_array($arg) && 1 == count($arg) && isset($arg[0]) && is_object($arg[0]) ) // array(&$this)
$args[] =& $arg[0];
else
$args[] = $arg;
then we might use the default value, of the first input argument, in our callback.
Related Posts:
- Which hook should be used to add an action containing a redirect?
- Add a new tab to WordPress Plugin install Listing
- Changing Plugin Load Order
- Admin settings update updating every time home page is hit?
- Global Objects and Public Methods
- How should you hook a session_start() when authoring a plugin?
- Init action hook running late after PayPal’s return url?
- Is there widely accepted phpDoc syntax for documenting which hook calls a function?
- How Do I Load My Action Earlier Enough?
- Does WP fire delete_post when trashed posts are automatically deleted?
- What’s the earliest point I can get the queried object ID?
- How do I Make a Theme “plugin-ready”?
- WordPress scheduled task is called but not executed
- How to add a link to WordPress Plugin install Listing
- How to modify post content before writing to database?
- I can’t find where a hook is being defined in a plugin – Easy Digital Downloads
- How do I handle multiple Submit buttons in plugin’s option page?
- How to use filter hook ‘post_updated_messages’ in coherence with action hook ‘save_post’
- Is it possible to create an action hook using do_action() within add_action()?
- Hook for post permalink update
- Dynamically Override Fancy Title
- Get returned variable from a function to add_shortcode function
- Create a plugin to change the action to which a function is hooked
- Can I differentiate between “Delete Post Permanently” and “Empty Trash” and do something for each accordingly?
- Adding Automatically To In WordPress Using Filter Referencing?
- comment_email hook doesn’t seem to work for comment editor field
- Best Practices for Creating and Handling Forms with Plugins?
- Is there a better way to implement responsive images than what WordPress uses by default?
- Woocommerce – Hide a Column in Cart Table
- unable to stop loop when using wp_insert_post with publish_post hook
- Add tab to profile.php wordpress plugin development
- WordPress Ajax callback function from plugin – OOP
- How do I change the initial quantity of a product in woocommerce?
- Where and how does WordPress store and use its plugin and hook information?
- Which are the hooks run before/after when a category’s deletion?
- edit_{$taxonomy} | Hook
- WordPress after content Hook & external template part
- best practice for query string values – get_query_var always empty for my value supplied in query string
- Modifying meta tags after doing ajax call in plugin
- .mo translation strings not loading in PHP scripts that handle AJAX calls
- Where to add hooks in a class
- Trying to understand order and frequency of action hooks firing
- How to use output buffering in WordPress hooked functions?
- Adding option to Gallery shortcode
- do_action and add_action on two different installed plugins won’t work
- template_redirect or admin-ajax.php?
- I have 2 plugins using the same wp_login action hook and one is not working
- Add a new confirmation page before saving
- How dynamic action login_form_{action} is working
- What happens when two or more plugins use the same hook?
- Does admin_print_scripts-$hook_suffix work for nested paths to individual files?
- How to get all queries’s results after they have executed?
- flush rewrite rules after plugin update?
- When does save_post hook fire on post save/update
- Plugin does not add action
- Add child pages to submenu automatically
- After plugin activation hook
- How to replace default comments with custom HTML?
- Odd map_meta_cap $args on post edit — sometimes integer, sometimes string
- How can I create a custom plugin that allows anonymous users to signup without registering?
- hook filter after the_content on a specific page
- Is there an admin hook that will let me read GET variable before it’s too late to set the header Location
- Call to undefined function is_home() or any conditional tags
- Associate multiple email addresses with the same user account, so they can log in with either
- WooCommerce change Tax Class programmatically when Recalculating an existing Order [closed]
- Run command “composer install” when activating wordpress plugin
- Add a check box in Menu Settings
- Custom filter not working
- Configure WordPress to Generate Scheme-less Relative URLs
- Using init hook for register_taxonomy is causing invalid_taxonomy in wp_insert_term()
- Ajax +wordpress onClick link redirect to new page and create html content
- How to replace settings in WordPress plugin from a theme
- Creating posts with links from a txt file
- Action / Hook when a new plugin is added
- apply_filters() and call_user_func() to define and call a function outside a class
- Getting Post ID at “stylesheet” and “template” hooks
- Trigger function on Remove block or add new block in Gutenberg JavaScript
- Woocommerce get_term_by() in transition_post_status hook doesn’t works
- Limit get_next_post to posts from the same author
- Any way, hook to add content right before the “read more” link?
- Is there any way to get post meta from publish_post hook?
- Add a custom submenu under submenu in a Custom WordPress Plugin
- How do I ensure I can loop through every enqueued script and CSS?
- Plugin Development – Call to undefined function comment_exists()
- remove different admin menu for specific users
- replacing jquery google cdn with a new version dynamically
- Prevent plugin activation and add admin notice
- Unable to show a message after plugin activation
- Does WordPress have something like timer hook?
- Can I use a hook other than ‘init’ to handle form submissions?
- Template file structure , wordpress hook for altering the template
- How do I replace title with my plugin?
- Looking for Hook that is fired after a plugin or wp upgrade is installed/updated
- Woocommerce: block user removing cart item
- how to insert content into wp_head after loop_end
- Apply function on all action hooks?
- How can I get a plugin to hook ‘dbdelta_queries’ — a filter used during version update?
- Send retrieve password notification email with custom HTML email template
- wp_head is not fired from the hook I have used in my plugin
- Trigger a JavaScript function based on the data fetched from Woo commerce hook