did_action( string $hook_name ): int

Retrieves the number of times an action has been fired during the current request.

Parameters

$hook_namestringrequired
The name of the action hook.

Return

int The number of times the action hook has been fired.

Source

function did_action( $hook_name ) {
	global $wp_actions;

	if ( ! isset( $wp_actions[ $hook_name ] ) ) {
		return 0;
	}

	return $wp_actions[ $hook_name ];
}

Changelog

VersionDescription
2.1.0Introduced.

User Contributed Notes

  1. Skip to note 2 content

    Example

    Using did_action() function to make sure custom meta field is only added during the first run since it can run multiple times.

    function my_sticky_option() 
    {
    	global $post;
    
    	// if the post is a custom post type and only during the first execution of the action quick_edit_custom_box
    	if ( $post->post_type == 'custom_post_type' && did_action( 'quick_edit_custom_box' ) === 1 ) 
    	{ 
    ?>
    
    	<fieldset class="inline-edit-col-right">
    		<div class="inline-edit-col">
    			<label class="alignleft">
    				<input type="checkbox" name="sticky" value="sticky" />
    				<span class="checkbox-title">
    					<?php _e( 'Featured (sticky)', 'textdomain_string' ); ?>
    				</span>
    			</label>
    		</div>
    	</fieldset>
    <?php
    	} // endif;
    }
    // add the sticky option to the quick edit area
    add_action( 'quick_edit_custom_box', 'my_sticky_option' );

You must log in before being able to contribute a note or feedback.